0

他のファイルでSTRINGの出現を見つけようとしています:

まず、検索したい文字列を正確に抽出します。

grep STRING test.txt | cut -d"," -f3 | tr -d ' ' 

次に、他のファイルで検索に進みます-したがって、私のコマンドは次のとおりです。

grep STRING test.txt | cut -d"," -f3 | tr -d ' ' | awk '/$0/' temp.txt

0 行の出力が得られますが、手動で比較すると、両方のファイルで共通の文字列が見つかりますか?

4

1 に答える 1

1

そのようにパイプすることはできません。サブシェルを使用する必要があります。何かのようなもの:

grep $(grep STRING test.txt | cut -d"," -f3 | tr -d ' ') temp.txt

awkまたは、次のように使用します。

awk -F, 'FNR==NR && /STRING/ { gsub(/ /,""); a[$3]; next } FNR!=NR { for (i in a) if ($0 ~ i) { print; next } }' test.txt temp.txt
于 2013-01-31T07:28:19.590 に答える