我有一个超过 40.000 行的文件 (file1),我想提取与 file2 中的模式匹配的行(大约 6000 行)。我像这样使用 grep,但它很慢:
grep -f file2 file1 > out
有没有更快的方法来使用awk
or sed
?
以下是我的文件中的一些摘录:
File1
:
scitn003869.2| scign003869 CGCATGTGTGCATGTATTATCGTATCCCTTG
scitn007747.1| scign007747 CACGCAGACGCAGTGGAGCATTCCAGGTCACAA
scitn003155.1| scign003155 TAAAAATCGTTAGCACTCGCTTGGTACACTAAC
scitn018252.1| scign018252 CGTGTGTGTGCATATGTGTGCATGCGTG
scitn004671.2| scign004671 TCCTCAGGTTTTGAAAGGCAGGGTAAGTGCT
File2
:
scign000003
scign000004
scign000005
scign004671
scign000013
Try grep -Fwf file2 file1 > out
The -F
选项指定纯字符串匹配,因此应该更快,而无需使用正则表达式引擎。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)