過去1時間に処理されたファイルを監視したいと思います。

過去1時間に処理されたファイルを監視したいと思います。

いくつかの要件があります。助けてください。

過去1時間に処理されている特定のディレクトリのファイルを監視したいと思います。

  1. 過去1時間にいくつのファイルが届きましたか?
  2. 過去1時間に処理されたファイルの数は何ですか?(私のプロセスは処理後にファイルを削除します。)
  3. これは未処理の最後のファイルです

ベストアンサー1

既存のファイルを見つけることはfindおそらく最も便利です。

ファイルが新しいファイルであることを知っていれば、ctimeを見るだけで十分です。過去のctimeが60分未満のファイルを見つけます。

find . -cmin -60

変更された古いファイルを含める場合は、find . -mmin -60 -o -cmin -60修正タイムスタンプ検証を使用することもできます。

逆に、ファイルが作成(または変更または削除)されたときに何が起こったのかを確認したい場合は、inotifywaitこの方法が役立ちます。プログラムの実行中に作成または削除されたファイルごとに1行が印刷されます。timeoutGNU coreutilsを使用して実行時間を制限できます。

inotifywait -q -m -e create,delete  .

おすすめ記事