を含むandpatterns
で複数検索したい。directory
recursive directories
files
次のようなコマンドを知ってgrep
います
grep -e '(pattern1)|(pattern2)'
また
grep -r -E 'string1|string2|string3' /var/www/http
ack
またはを使用してそのためのコマンドは何ag
ですか?
これで十分です:
ack -R 'string1|string2'
デフォルトのよう-R
に、省略できます。
ack 'string1|string2'
からman ack
:
-r、-R、 --recurse
サブディレクトリに再帰します。これはデフォルトであり、grep との互換性のためにここにあるだけです。--no-recurse をオフにするためにも使用できます。
/path/to/patterns.file などのファイルからパターンを取得する場合は、次を使用できます。
ack "$(cat /path/to/patterns.file)"
または同等に:
ack "$(< /path/to/patterns.file)"
に完全に相当するものが見つかりませんgrep -f
。
の場合ag
、verion 0.19.2 の時点で、デフォルトはディレクトリとファイルを再帰的に検索することです。
複数のパターンを検索するには、同様の構文を次のように使用できます。ack
ag 'pattern1|pattern2'
pattern1
と の両方を検索しpattern2
ます。
再帰的に検索したくない場合は、スイッチで検索の深さを 1 に設定できます。--depth NUM
したがって、
ag 'pattern1|pattern2' --depth 1
両方のパターンについて、現在のディレクトリでのみ検索します。