trap で sh 内の signal を捕捉2011年09月29日 12時39分43秒

trap コマンド シグナル名 [シグナル名]という書式で指定できる。signal(2) に加えてシグナル 0 があり、スクリプト終了時に送出される。スクリプト終了時には exit での終了も含まれる。

% trap "rm -f /tmp/tmp.$$" HUP INT QUIT TERM

デフォルト動作に戻すには単にコマンドに - か空行を設定する。


% trap - HUP INT QUIT TERM
% trap HUP INT QUIT TERM