ある一定以前のフォルダを削除するシェル


Linuxのbashにおいて、以下コマンドで一定以上前のフォルダを削除したり、移動したりできます。

##############################
# Delete old data.
##############################
### aaa フォルダ配下の30日以上前のディレクトリを backup フォルダへ移動
find ./aaa -type d -mtime +30 | xargs mv --target-directory=./backup

### 30日以上前のディレクトリを強制削除
find . -type d -mtime +30 | xargs rm -fr

これをcrontab -eにてスケジュール登録することで、ディスク容量を圧迫する恐れもなくなります。
2通り紹介しましたが、『強制削除』の方はお勧めしません。
一度、バックアップをフォルダ移動させ、そこから一定期間メンテナンス時に手動削除の方がよいでしょう。


投稿者: cova

香川・大阪を拠点として活動しているシステムエンジニアです。

コメントを残す

メールアドレスが公開されることはありません。