回答:
上と同様のための研究findソリューション私は上の有用な説明を発見SHで「検索」の「-prune」オプションを使用する方法を?ローレンスゴンサルベス著。
次のようなものを使用できます。
find . \( -type d -name .hg -prune \) -o \( -type f -name "foo" -print \)
または(名前なし)
find . \( -type d -name .hg -prune \) -o \( -type f -print \)
(エスケープ)かっこ\(と\)グループ試験(type及びname)および対応するアクションは(prune及びprint、それぞれ)と共に左右のOR( -o)。
-o並置よりも優先順位が低いため、必要に応じて括弧を省略できます。多くのfind実装では、最終版をスキップすることもできます-print。
find . -type d -name .hg -prune -o -type f -name "foo" -print
ご覧くださいack:http://betterthangrep.com/
既定の除外フォルダーの適切なセット(たとえば、.hgは既定の除外フォルダー)に加えて、新しいフォルダーを簡単に除外できます。
ack --ignore-dir=.directory search_term
ファイルのリストを探しているユースケースにこれを戻すには、次のような-fオプションを使用します。
ack -f --ignore-dir=.directory
複雑な検索/検索コマンドの作成から単純なackコマンドの作成に切り替えました。
ヒント:よく使用されるコマンドラインオプション(除外フォルダーなど)を.ackrcファイルに入れます。
find | less質問に基づいて、OPはファイルの単純なリストを探しています。これはどのように役立ちますか?
-prune、最初のセットのブラケット、および-type f -print2番目のセットの内側に入れて、and / or操作をより明確にするだけでしたが、それ以外の場合、これはスポットライトに見えます。