Mac端末を使用して、特定の正規表現または同様のソリューションに一致するディレクトリ内のファイルを削除するにはどうすればよいですか?
find
コマンドを使用します。
正規表現に一致するすべてのファイルを(再帰的に)検索します:find . -type f -regex '/ex/'
正規表現に一致するすべてのファイルを(再帰的に)検索し、それらを削除します:find . -type f -regex '/ex/' -exec rm {} \;
角かっこは見つかったパス名を格納し、バックスラッシュはfindに渡されるため、セミコロンをエスケープします。それを逃がさなければ、それはシェルによって消費されるでしょう。それが頭に浮かんだ場合は、「Bashシェルの学習」の最初の2つの章を読んでください。
その他のオプションについては、マニュアルページでfind
を確認してください。検索する方法は他にもたくさんあります。
ジョレリの答えと非常によく似ています。これは私が使用するものです:
find . -regex '/ex/' -print0 | xargs -0 rm
-print0
および-0
引数により、findはchar 0で区切られたリストを出力し、xargsはリストの各要素でrm
コマンドを実行するため、スペースを含むパスは問題になりません。