簡體   English   中英

Grep匹配外部文件的模式

[英]Grep to match patterns of an external file

我正在尋找像unix grep這樣的東西,可以從外部文件中獲取paterns。

我有像這樣的文件patterns.txt的模式列表(但有更多的條目):

234523.34
623253.45
3466.55

還有一個名為to_search_on.txt的文件,我只需要保留與patterns.txt匹配的行。 這是to_search_on.txt文件(但有更多條目):

kaosar,23443.44,0
ratro,2423545,0
pencod,3466.55,1

我怎樣才能做到這一點? 謝謝

您可以使用-f選項從文件中讀取模式

$ grep -f patterns.txt to_search_on.txt
pencod,3466.55,1

欲了解更多信息man grep會給你帶來的信息

  -f FILE, --file=FILE
              Obtain patterns from FILE, one per line.  The empty file contains zero patterns, and therefore matches nothing.

你可以使用awk

awk -F, 'FNR==NR {a[$0]++;next} ($2 in a)' patterns.txt to_search_on.txt
pencod,3466.55,1

如果在第二個字段中找到模式(除以) ,這將只會給出命中
它將patterns.txt文件存儲在數組a ,然后針對to_search_on.txt進行測試

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM