Linux Tips:直近の数ファイルのみ残して、それ以外を消す

バックアップは7世代のみ残すといった運用をしている時、直近の7ファイルのみ残して、それ以外のファイルを消しますよね。そういう時に使えるコマンドTips。

backup_*というファイル名でバックアップを取り、直近を7世代のみ残す場合のコマンド。

ls -t backup* | tail -n +8 | xargs rm -f

lsコマンドで、タイムスタンプの降順に出力する。tailコマンドがポイントで、オプションで8行目以降のみを出力。これで8世代以前のファイルのみを絞ることができる。それをrmで消す。