Ruby on Railsを使用して、OSXでgrep
を使用するWordのアプリケーションを検索しています。特定のパターン。
次のコマンドを使用しています。
grep -inRw -E 'direct' . --exclude-dir -E 'git|log|asset'
このコマンドは、私が思っていることを実行していません。これが私がどのように動作するかですthoughtそれはうまくいくでしょう:
除外ディレクトリに関しては、コマンドは'./ git'および'./ log'ディレクトリ、および'./app/assets'
私には基本的な知識が欠けているのは明らかですが、それが何かはわかりません。
そのオプションのmanページの説明は誤解を招くようなものです...globsのようなパターンはのようなパターンではありませんregex。 info
ページ ごと:
--exclude-dir = GLOB
パターンGLOBに一致する名前サフィックスを持つコマンドラインディレクトリをスキップします。再帰的に検索する場合は、ベース名がGLOBと一致するサブディレクトリをスキップしてください。 GLOBの余分な末尾のスラッシュは無視してください。
したがって、あなたの場合は次のように実行できます:
grep -inRw -E 'direct' . --exclude-dir={git,log,assets}
git
、log
およびassets
という名前のディレクトリを除外するには、または.
grep -inRw -E 'direct' . --exclude-dir={\*git,asset\*}
git
で終わる、またはasset
で始まるディレクトリ名を除外します。
--exclude-dir
は|
を理解できません。
ただし、除外するディレクトリごとに1つずつ--exclude-dir
を複数回指定することで、同じ効果を得ることができます。
grep -inRw -E --exclude-dir 'asset' --exclude-dir 'git' --exclude-dir 'log' 'direct'