我有一個文件(大約1000個單詞)。從文件中清除多個單詞
的1.txt:
XYZ
ABC
DEF
GHI
...
而且我還有一個文件2.txt其中包含了一些數據,現在我想在的1.txt在文件2.txt到grep這些話。 我已經使用了下面的邏輯,但給出了一個錯誤。
name=$(cat 1.txt |tr '\n' '|')
grep -E -w ${name} 2.txt
我有一個文件(大約1000個單詞)。從文件中清除多個單詞
的1.txt:
XYZ
ABC
DEF
GHI
...
而且我還有一個文件2.txt其中包含了一些數據,現在我想在的1.txt在文件2.txt到grep這些話。 我已經使用了下面的邏輯,但給出了一個錯誤。
name=$(cat 1.txt |tr '\n' '|')
grep -E -w ${name} 2.txt
grep的可以使用-f
選項從文件中讀取模式:
egrep -w -f 1.txt 2.txt
謝謝!!它的工作 –
偉大的,請[接受這個答案](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235)點擊旁邊的勾號。 –
您需要的報價和使用egrep的
egrep -w "$(cat 1.txt |tr '\n' '|')" 2.txt
但-f是更好的答案
'egrep'是調用'grep -E'的另一種方式,他已經在做。根據1.txt的內容,引用可能需要也可能不需要,但當然是一個好主意。 – chepner
什麼是錯誤? – dogbane