ボス級社内SEのお役立ち技術情報

社内SEのシステム開発について。メインプログラム言語C#

【CentOS】日付が1週間前より古いバックアップファイル(フォルダ)を削除する方法

f:id:HLSE:20210927122629p:plain知らない人も多いと思うが、

Linuxのfindコマンドは、条件に合ったファイルやフォルダに対して、

別コマンドを実行することができる-execオプションがあります。

これを利用すれば、簡単に7日以前のファイルを削除することが可能です。

使用するコマンド&オプション

 

コマンド

find

オプション

 -type

  f ファイルを検索する

    d フォルダを検索する

 -mtime +7 7日以前の日付が対象

 -exec 検索されたファイル(フォルダ)に対しコマンドを実行する

■-execで実行するコマンド

 rm -rf 指定ファイ(フォルダ)を削除する

   -fオプション(--force):エラーメッセージを表示しない

   -rオプション(--recursive):ディレクトリも削除の対象とする

 

【参考URL】

ファイル・ディレクトリを削除するrmコマンドについて詳しく!【Linuxコマンド集】

 

でわすれてはいけないのが、最後に以下文字列を付加すること

{} \;

実コマンド

 

ファイルの場合

find ./ -type f -mtime +7 -exec rm -rf {} \;

 

フォルダの場合

find ./ -type d -mtime +7 -exec rm -rf {} \;

 

ワンライナーでできるので非常に便利です。