ログファイルが大きくなるにつれて、いくつかのバックアップスクリプトを作成しようとしています。私が持っているのは、現在のファイル(たとえばsecure
にあるファイル/var/log/
)を処理し、そのファイルから内容を削除することです。しかし、次のような名前のファイルがいくつかあります。secure.1
みんなsecure.2
で数えて数字が大きければ、2
みんなで保管したいです。このファイルを検索または計算する方法が見つかりません。私の心に最初に浮かぶのは次のとおりです。
find /var/log/ -name *.1 | wc -l
1
そしてファイルは1つだけなので、常に印刷されますsecure.1
。類似{1..5}
または類似の範囲の数値を指定できるforループのように計算するにはどうすればよいですか?これらのファイルを分離してバックアップや削除などのために1つのファイルにする方法はありますか?それとも、最初に数字で終わるすべての数字をどのように見つけますか?
ベストアンサー1
一般的な話す-name
:
find /var/log -name '*.[2-9]'
または任意の数字について:
find /var/log -name '*.[[:digit:]]'
または、数字の後に他の文字がある場合:
find /var/log -name '*.[2-9]*'