Sed
比較兩個文件得到相同的列表
file1.txt(50 行)
TERYUFV00000010753 TERYUFV00000009526
file2.txt(500 行)
TERYUFV00000009526 refids_739_known_8/10_target TERYUFV00000018907 refids_12023_known_21/22_target TERYUFV00000010753 refids_11775_known_1/1_target
輸出.txt
TERYUFV00000010753 refids_11775_known_1/1_target TERYUFV00000009526 refids_739_known_8/10_target
比較 file1.txt(有 50 行)和 file2.txt(有 500 行),從 file2.txt 中獲取與 file1.txt 相同的列表。
我嘗試了 join 和 fgrep 命令,它輸出空文件
fgrep -f file1.txt file2.txt
這裡我們從 file1.txt 中獲取搜尋模式並在 file2.txt 中進行搜尋。由於文本是固定的,我們正在使用
fgrep
更快的搜尋操作。
當您使用 join 時,每行上的條目就像數據庫中的“單元格”,但它們應該被排序,所以您可以嘗試,
sort file1.txt > file1_t.txt sort file2.txt > file2_t.txt
然後加入
$ join file1_t.txt file2_t.txt
這將為您提供一個外部連接,即兩個文件中所有出現的單元格的列表。要將此列表減少為僅兩個文件中的條目,請將上述命令的輸出通過管道傳輸到 uniq
$ join file1_t.txt file2_t.txt | uniq