Bashスクリプトで一時停止履歴書をキャプチャする方法

Bashスクリプトで一時停止履歴書をキャプチャする方法

現在、以下のようにシャットダウンをキャッチして処理する継続的に実行されるbashスクリプト(osx)があります。

trap onshutdown TERM

トラップに一時停止/再開を処理させるにはどうすればよいですか?

trap onsuspend ?

trap onresume ?

答え1

私はSIGTSTPとSIGCONT信号を探しています。この試み:

trap onsuspend TSTP
trap onresume  CONT

答え2

プログラムが中断され、信頼できないため、名前付きパイプを設定して監視スクリプトを生成します。

5分または15分ごとに繰り返し、現在のタイムスタンプを名前付きパイプに書き込み、スリープモードに入ります。

その後、そのパイプからデータを読み取り、読み取り間で計算を実行できます。時間が1~2個以上ジャンプすると、すでに眠っているのです。

必要な時間の正確さに応じて、/private/var/log/system.logファイル(および可能であれば/private/var/log/system.0.log.gz)を追跡して、最後のスリープ/カーネルのロギングによって提供されるウェイクアップ時間です。

これは、信号に依存するよりも多くのタスクを実行します。アシスタントを独自に実行させ、必要な信号をスクリプトに送信することもできます。

1つは6つ、もう1つは66でした。

関連情報