を使用してfind
:
find ~/tmp -type f -mtime +0 -delete
~/tmp
再帰的に検索されるディレクトリです。これに応じて変更します
-type f
ファイルのみを検索します
-mtime +0
1日以上前に最後に変更されたファイルと一致します
-delete
一致したファイルを削除するだけです
ここでキャッチされ-mtime +0
、ほとんどが使用するのではと思うかもしれない-mtime +1
が、find
日を計算しながら、端数の時間を無視します。そう、-mtime +1
最後の変更が少なくとも2日前に行われた場合、ファイルと一致します。
引用man find
に-mtime
は、次と同じタイミング規則があり-atime
ます。
-atime n
ファイルはn * 24時間前に最後にアクセスされました。ファイルが最後にアクセスされた24時間前の数を計算すると、小数部分は無視されるため、-atime +1と一致するには、少なくとも2日前にファイルにアクセスする必要があります。
また、精度が必要な場合は、次の-mmin
オプションを確認してください。find
、時間を分単位で示す。
3時間後に定期的に実行するには、追加することができます cron
エントリ。
実行crontab -e
して追加:
00 */3 * * * /usr/bin/find ~/tmp -type f -mtime +0 -delete
を使用zsh
してファイルを削除します。
rm ~/tmp/**/*(.-m+0)
に追加cron
:
00 */3 * * * /usr/bin/zsh -c 'rm ~/tmp/**/*(.-m+0)'