tempファイルを定期的にcronでフォルダごと削除するLinuxの【find】【rm】コマンド

別に大したことじゃないですが、定期的にたまっていくログを削除できるように設定したら便利だなと思い設定しましたっていうだけです。
もちろんcron使ってます。忘れないように、記録として投稿します。

まあ、先に最終的に適用したコマンドは以下になります。

$ find /var/date/log -name '*.log' -mtime '+1' -exec rm -f {} \;

これは、/var/date/log フォルダから .log の拡張子が付いたファイルの中で、最終更新日から1日経過したファイルを探し出して、削除するという命令になっています。

初めは、以下のように rm コマンドだけで単純にフォルダ内部を全削除しようと思っていましたが、それだと色々と問題が発生しますよね。最新のファイルは残しときたいとかの場合とか。全部なくなっては問題だ。

$ rm -rf /var/date/log/* > /dev/null 2>&1

なので、find コマンドを使って削除対象となるファイルを抽出してから削除という形になっています。

ちなみに、コマンドオプションの意味は以下のサイトから確認してください。
【 find 】 ファイルやディレクトリを検索する
【 rm 】 ファイルやディレクトリを削除する

cron の実行方法はここでは説明しません。