find、grep、rmを組み合わせてファイルを削除する方法

UNIX1-100

rm、grep、rmを組み合わせてファイルを削除する方法

findコマンドでファイルをリストして、更にgrepコマンドでリストを絞り、その結果をrmコマンドで削除する方法です。

findコマンドだけで削除したいファイルをリストできる場合は、このようにすれば削除できます。

 
$ find . -name *.log -exec rm -f {} \;
 

 

findコマンドだけで削除したいファイルをリストできなかった場合は更にgrepで絞って、その結果をrmコマンドに渡せばいいです。

 
$ find . -name *.log | grep _[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9].log | xargs rm
 

test_20131010.log test_1999_0101.log など、タイムスタンプでバックアップしたファイルを消すことができます。

 

ファイル検索でリストされた結果を全て消したい場合に便利な使い方です。

 



 

 


サブコンテンツ

このページの先頭へ