一度にgrep

一度にgrep

私のスクリプトはパラメータを受け取り、他のファイルをgrepする必要があります。スクリプトは各パラメータを繰り返します。

ORを使用して単一の検索文字列とgrepからパラメータを収集する方法はありますか?私はすべてを一度に検索したら、私のスクリプトがより速くなることを望んでいるため、これをスピードのために実行したいと思います。どんなアイデアもありがとうございます。

ベストアンサー1

grep -e foo -e bar -e baz files

または:

grep 'foo
bar
baz' files

foobarbazデフォルトの正規表現ではなく文字列の場合は、上記-Fの2つのコマンドにこのオプションを追加してくださいgrep

拡張正規表現の場合:

grep -E 'foo|bar|baz' files

文字列リストが位置パラメータ($1$2...)にある場合:

NL='
'
IFS=$NL  # or IFS=$'\n' with ksh93/zsh/bash/mksh/FreeBSD sh...
grep -Fe "$*" files

$*位置パラメータと最初の文字を連結したものです$IFS。)

おすすめ記事