2018年12月29日土曜日

kill関数について


perlのスクリプトでプロセスをkillする処理があり、少し勉強したのでメモ。

■コマンド名
kill

■記法
kill <シグナル名> <プロセスID>

引数1 シグナル名
・シグナルは'TERM'としたり、シグナル番号の’15’を書いてもいい。
・マイナスをつけるとPIDに対してではなく、GPIDに対してシグナルを送信する。

引数2 プロセスID
・シグナルの送信先のプロセス。PID、もしくはGPIDを指定する。
・プロセスIDの方にマイナスをつけた場合にも、GPIDに対してシグナルを送信するようになる。

例)
kill TERM 100
 ⇒TERMのシグナルをPID100に送信

kill TERM -100
 ⇒TERMのシグナルをGPID100に送信

kill -TERM 100
 ⇒TERMのシグナルをGPID100に送信


■意味
指定したプロセスに対してシグナルを送信する。
送信できるシグナルは以下のコマンドで確認できる。

$ kill -l

PIDやGPIDはpsコマンドで確認できるけど、GPIDはオプションを指定しないと出力されないので注意。

$ ps -o user,group,pid,ppid,c,start_time,tty,time,comm


■使用例


※参考
<http://perldoc.jp/func/kill>

0 件のコメント:

コメントを投稿