【发布时间】:2015-06-12 05:04:56
【问题描述】:
我正在尝试对文本文件 (list.txt) 中的每行一个模式进行 grep,以查找目标文件 (file1) 中每个模式的匹配数。目标文件如下所示:
$ cat file1
2346 TGCA
2346 TGCA
7721 GTAC
7721 GTAC
7721 CTAC
而且我需要每个数字模式(2346 和 2271)的计数。
如果您提供引号中的模式列表,我有这个脚本可以工作:
$ for p in '7721' '2346'; do printf '%s = ' "$p"; grep -c "$p" file1; done
7721 = 3
2346 = 2
我想做的是搜索list.txt中的所有模式:
$ cat list.txt
7721
2346
6555
25425
22
125
....
19222
如何将上面的脚本转换为在 list.txt 中查找并搜索每个模式,并返回与上面相同的输出 (pattern = count) 例如:
2346 = 2
7721 = 3
....
19222 = 6
【问题讨论】:
-
7721行之一与其他两个行不同是否重要? -
我看不出这是那个问题的重复?有很多相同形式的问题可以合理地重复但不是那个。
-
没关系。事实上,ID 后面的字符串可能会在许多匹配项中有所不同。