【Linux】 サンプルシェルスクリプト ― 2007年10月01日 08:23
物忘れがひどく?なった私のメモです。
○ シェルスクリプト プロセスの停止(kill)
#!/usr/bin/sh
######################################################################
#
# プロセスを停止(kill)シェルスクリプト
#
# 起動されているプロセスを停止(kill)する
#
# proc_kill.sh
#
#
# Ver Date Author Comment
# 0.00 yyyy/mm/dd Name
#
######################################################################
#
### 停止対象プロセス名 ###########################
# 停止したいプロセス情報
PMAX=6 # 停止したいプロセスの個数
PNAME[1]="main_proc" # ※ ps コマンドで表示されるプロセス名を記述
PNAME[2]="sub_proc1" # 停止したいプロセスが親子関係にある場合は
PNAME[3]="sub_proc2" # 親プロセスを先に記述
PNAME[4]="sub_proc3" # たまに、子プロセスが停止すると親プロセスが監視
# していて再起動される場合がある。
PNAME[5]="child_proc1"
PNAME[6]="child_proc2"
#
### シェルスクリプト処理 #########################
i=1
while [ ${i} -le ${PMAX} ]
do
# 停止対象プロセスが存在するかチェック
PEXIST=`/bin/ps -ef | /bin/grep ${PNAME[${i}]} | /bin/grep -v grep | /usr/bin/wc -l`
if [ ${PEXIST} -ne 0 ]; then
# 同プロセス名全て停止(Kill)
for PID in `/bin/ps -ef | /bin/grep ${PNAME[${i}]} | /bin/grep -v grep | /bin/awk '{print $2}'`
do
/bin/kill -9 ${PID} 1> /dev/null 2>&1
done
sleep 1 # 無くても・・・
fi
let i=i+1
done
exit
コメント
トラックバック
このエントリのトラックバックURL: http://inari.asablo.jp/blog/2007/10/31/1880821/tb
※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。
コメントをどうぞ
※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。
※なお、送られたコメントはブログの管理者が確認するまで公開されません。