【linux】grepでファイル内検索して該当するファイルを削除などする
問題
ある語句を含んだファイルだけを削除したい。
grepで探して、rmできる?
答え
grep は -l オプションでファイル名だけを出力するので、これを利用する。
・あるディレクトリ(/aaa/bbb)の中にあるファイルが対象の時
grep -l '検索キーワード' /aaa/bbb/* | xargs rm
・あるディレクトリ(/aaa/bbb)内でfindしたファイルを対象にする時
find /aaa/bbb -type f -name '*.php' | xargs grep -l '検索キーワード' | xargs rm
コメント