我正在尝试使用comm来计算两个已排序文件之间的差异,但结果没有意义,出了什么问题?我想显示test2中存在的字符串但不显示test1,然后显示test1中存在的字符串但不显示test2
>test1 a b d g >test2 e g k p >comm test1 test2 a b d e g g k p
答案 0 :(得分:16)
要显示test2
但不在test1
中的行,请写下以下任意一行:
comm -13 test1 test2
comm -23 test2 test1
(-1
用仅存在于第一个文件中的行隐藏列; -2
用仅存在于第二个文件中的行隐藏列; -3
用行隐藏列存在于两个文件中。)
反之亦然,以显示test1
但不在test2
中的行。
请注意,某一行上的g
被认为与g
不同,后面有一个空格,这就是
g
g
而不是
g
答案 1 :(得分:2)
在两个文件之间添加一个共同的字符,最后说'z'。您将看到第3列出现,表示该值对两者都是通用的。
输出用于显示'col1中的数据是uniq到file1',而'col2中的数据对于file2是唯一的'。
最后,comm'-1,-2,-3'的参数意味着抑制所提供的列编号的输出,例如-1。
我希望这会有所帮助。