3
「トラップ…INT TERM EXIT」は本当に必要ですか?
クリーンアップタスクにtrap使用する多くの例trap ... INT TERM EXIT。しかし、3つのsigspecをすべてリストすることは本当に必要ですか? マニュアルによると: SIGNAL_SPECがEXIT(0)の場合、シェルの終了時にARGが実行されます。 スクリプトが正常に終了したか、または受信したSIGINTか終了したかに関係なく適用されると信じていますSIGTERM。また、実験は私の信念を確認します: $ cat ./trap-exit #!/bin/bash trap 'echo TRAP' EXIT sleep 3 $ ./trap-exit & sleep 1; kill -INT %1 [1] 759 TRAP [1]+ Interrupt ./trap-exit $ ./trap-exit & sleep 1; kill -TERM %1 [1] 773 TRAP [1]+ Terminated ./trap-exit では、なぜそんなに多くの例がすべてをリストしているのINT TERM EXITでしょうか?または、私は何かをEXIT見逃しましたか?足裏が見逃す場合がありますか?