Shell行命令排序命令

时间:2011-09-05 19:52:41

标签: shell

我有一个Masters.txt(所有记录)和一个New.txt文件。我想针对Masters.txt处理New.txt并输出New.txt中Masters.txt中不存在的所有行

我不确定这是否是排序-u命令可以做的事情。

2 个答案:

答案 0 :(得分:2)

首先使用sort对这两个文件进行排序,然后使用comm命令列出仅存在于new.txt而非masters.txt中的行。类似的东西:

sort masters.txt >masters_sorted.txt
sort new.txt >new_sorted.txt
comm -2 -3 new_sorted.txt masters_sorted.txt
默认情况下,

comm在其输出中生成三​​列;第1列包含第一个文件唯一的行,第2列包含第二个文件唯一的行;第3列包含两个文件共有的行。 -2 -3开关会抑制第二列和第三列。

答案 1 :(得分:0)