1時間以上経過したディレクトリを削除する方法 (cron ジョブ)

1時間以上経過したディレクトリを削除する方法 (cron ジョブ)

私のアプリケーションは、ユーザーが特定のアクションを実行するとディレクトリを作成します。これらのディレクトリは、マシン上に正確に 1 時間保存され、その後削除されます。

ここで、アプリケーションの「削除ロジック」部分を、1 分ごとに実行される cron ジョブに移動したいと思います。

削除するディレクトリが にあるとします/tmp/files/。スクリプトはこのパスにあるすべてのディレクトリをチェックし、1時間前に作成されたものをすべて削除します

ご協力いただければ幸いです。

前もって感謝します!

**解決済み**

これはうまくいくでしょう:

find ./* -mmin +60 -type d -exec rm -rdf {} \;

答え1

使用しないでください。find ./*これにより、シェルは呼び出す前にワイルドカードを展開しますがfind、ファイルが多すぎる場合は失敗します。

"./*"代わりに、次のように find コマンドに渡す必要があります。

find . -type d -path "./*" -mmin +60 -exec rm -rf {} \;

関連情報