【Linux】找出文件之间的差异

使用命令comm可以找出2个文件之间的差异

现在有文件如下:

Linux:/qinys # cat A.txt
apple
lemon
onion
orange
pear
Linux:/qinys # cat B.txt
grape
lemon
olive
pear
tomato

找出两个文件之间的差异

image

命令解释

(1)sort [文件名1] –o [文件名2] :将文件名1中的内容排序后保存在文件名2的文件中

(2)输出的第一列包含只在A.txt第二列包含只在B.txt中出现的行第三列包含A.txt和B.txt中相同的行。各列之间使用(\t)作为界定符;

(3)格式化输出依据

  • -1 从输出结果中删除第一列
  • -2 从输出结果中删除第二列
  • -3 从输出结果中删除第三列

不显示第三列:

image

上图我们觉得看的不方便,需要将2列合并为一列

image

sed命令通过管道获取到comm输出的内容,sed中的s代表替换,/^\t代表匹配行首制表符;//两个字符之间没有任何字符,是用来替换行首的\t的字符串



posted @ 2019-01-15 15:15  OLIVER_QIN  阅读(650)  评论(0编辑  收藏  举报