web-dev-qa-db-ja.com

grep複数除外拡張子

私は次のような単一の除外拡張機能を見つけます

grep --exclude "*.js" "a" *

複数の除外マスクを作成するにはどうすればよいですか?

以下のコードを試しましたが、機能しません。

grep -r --exclude=*.\{html,htm,js} "li" *

grep -R -E '(\.js|rb)' "create" * 
2

中括弧ではなく、アスタリスクをエスケープする必要があります。コマンドは次のようになります。

grep -r --exclude=\*.{html,htm,js} "li" *
8
poplitea

man grep*スクロールスクロールスクロール*

-exclude = GLOB 
ベース名がGLOBと一致するファイルをスキップします(ワイルドカード一致を使用)。
ファイル名globは*、?、および[...]を使用できます。ワイルドカードとして、\ to 
はワイルドカードまたはバックスラッシュ文字を文字通り引用します。

詳細については、「シェルグロブ」を参照してください

例:

 $ grep -r --exclude =\*。{png、jpg} a。
 ./ moo.txt:a 
 ./ moo.htm:a 
 ./ hai:a 
 
 $ ls 
 hai hai.png moo.htm moo.txt 

同様の質問