Linuxで最新の6つのファイルを除くすべてのログファイルを削除するスクリプト

Linuxで最新の6つのファイルを除くすべてのログファイルを削除するスクリプト

すべてのログファイルを削除し、ディレクトリに生成された最後の6つのファイル(最新)のみを保持する方法のスクリプトを作成するのに役立ちます。私のテストサーバーでは、/var/log/mqmファイルシステムが2〜3日でいっぱいで、cronジョブを使用して古いログファイルを削除する必要があります。

私が試した方法は次のとおりです。今日作成されていないファイルを削除したいです。残念ながら、毎日100を超えるログファイルを受信して​​いることがわかるため、期待した結果が得られていません。実際には最新の6つのファイルだけが必要です。

#!/bin/bash

find /var/log/mqm -name "*.LOG" -type f -mtime +1 > list_of_deleted_logs.out
find /var/log/mqm -name "*.LOG" -type f -mtime +1 -exec rm -f {} \;

関連情報