システム運用TIPS:起動・終了shell
技術ドキュメント目次 -> システム運用TIPS -> 起動・終了shell本技術ドキュメントは、2002~2004年頃に作成したものが多いです。
内容が古くなっていることもあるかと思いますが、ご了承ください。
【低価格SSL証明書】弊社運営の低価格SSL証明書販売サイト、翌月末払いなど請求書払いも可能。
$! という特殊変数には、
直前にバックグラウンドで実行したプログラムのPIDが格納されるので、
次のような stop/start のshellスクリプトを作成し、アプリケーションを
起動・終了する時に便利です。
SystemV系のunixや、RedHat系のLinuxでは、
/etc 以下にある initd.d ディレクトリ(/etc/initd.d や /etc/rc.d/init.d)に、
引数に stop start をとる起動shellが格納されていますので、
それを参照するのも参考になるかもしれません。
なお、
initd.d ディレクトリ内にある、
S で始まるスクリプトは OS起動時に start を引数にして実行され、
K で始まるスクリプトは OS起動時に stop を引数にして実行されます。
#!/bin/sh # Copyright (C) 2006 Slogical Corporation case "$1" in 'start') (バックグラウンドで起動させたいプログラム) & echo $! > ./.pid ;; 'stop') kill `cat ./.pid` rm -f ./.pid ;; 'restart') kill `cat ./.pid` rm -f ./.pid (バックグラウンドで起動させたいプログラム) & echo $! > ./.pid ;; *) echo "Usage: $0 { start | stop }" exit 1 ;; esac exit |
■ システム運用TIPS についての他のドキュメント
■ 他のグループのドキュメント
Apache / Linux / FreeBSD / OpenSSL / Perl / HTTPプロトコル / Jakarta Tomcat / Java / NetBSD / Oracle / PostgreSQL / UNIX の C言語 / UNIX のコマンド / Windows / bind / システム運用TIPS