私のトラップがログメッセージを印刷しないのはなぜですか?

私のトラップがログメッセージを印刷しないのはなぜですか?

私がやっていることは、

trap 'rm -f /path/of/file/fileName.running; echo "TRAPPED & READY";' 1 2 9 15 >> trap.log

ログには何も受信されず、削除する必要があるファイルはまだそこにあります。スクリプトが使用しているサーバーをシャットダウンするため、スクリプトの実行中にどのシグナルがスクリプトを停止するのかわかりません。

注:このファイルが存在する場合、私のクローンスケジュールジョブは実行されず、可能なシグナルが欠落しているようには見えません。私はどこで間違っていますか?

ベストアンサー1

問題の一部はargコマンドの(参照された)外部があるため、>> trap.logファイルから取得することは何も追加しないtrap.logコマンド自体の出力だけです。trapスクリプトが終了したときに「TRAPPED & READY」と言うのがどういう意味なのかよく分からないが、そういう意味のようです。

トラップ'rm -fファイル名;エコ"情報「 >> トラップ。ログ」信号仕様

私はカルロのコメントに同意します。 「スクリプトが使用しているサーバーをシャットダウン」すると、スクリプトが終了する可能性が最も高く(シグナルによって終了せず)EXIT(または同等に0)を使用する必要がありますsigspec (おそらく12および15)。

;PS argコマンドの最後にセミコロン()を追加する必要はありませんtrap

おすすめ記事