unix 根据file1的第一列比较文件并打印不在其他文件中的行[关闭]

kgsdhlau  于 2023-08-04  发布在  Unix
关注(0)|答案(2)|浏览(170)

已关闭。此问题需要更多focused。它目前不接受回答。
**希望改进此问题?**更新问题,使其仅针对editing this post的一个问题。

上个月关门了。
Improve this question
我有7个文件,想比较file 1的第一列。如果file 1中的第一列的名称没有出现在任何其他文件中,我想打印该行。

file 1

peter 10  300
Xavier 12  30
Jack   123  67
Ram    34   57
Jancy   56  34
Thomson 56  67

file2

Jack    23  67
peter   12  39

file3 

Jack   123  67
peter  15   45
Thomson  35  430

字符串
我希望得到以下输出

Xavier 12  30
Ram    34   57
Jancy   56  34


你的建议将不胜感激。- 谢谢-谢谢

k3bvogb1

k3bvogb11#

这是我的建议:

grep -v $(printf '-e ^%s ' $(cut -d ' ' -f 1 file2 file3 | sort -u)) file1

字符串
希望能帮上忙。

x8goxv8g

x8goxv8g2#

$ awk 'FILENAME != "file1" {a[$1]; next} !($1 in a)' file[2-6] file1
Xavier 12  30
Ram    34   57
Jancy   56  34

字符串

相关问题