Linux

按第二個文件的列表過濾文件的行

  • August 17, 2020

file1.tabular包含超過 3 列的“元素”資訊。

element1 235 oval red \
element2 334 oval red \
element3 356 rectangular blue

file2.txt包含單列

element1\
element3

我想過濾file1.tabular並將它們另存為file3.tabular,它將僅包含 中的元素file2.txt,但包含所有 3 列資訊file1.tabular,例如

element1 235 oval red\
element3 356 rectangular blue

在 Ubuntu 上會有解決這個問題的命令嗎?我將不勝感激專家的幫助。謝謝

您可能正在尋找

grep -f file2.txt file1.tabular > file3.tabular

-f選項指示grep讀取要從中查找的模式file2.txt。它將搜尋應用到file1.tabular並將輸出重定向到file3.tabular.

請注意,我假設您的文件中沒有真正的“行延續”轉義(\所有行末尾的 )。

引用自:https://unix.stackexchange.com/questions/604898