Linux小技巧之文件差异对比

编程入门 行业动态 更新时间:2024-10-25 12:22:30

Linux<a href=https://www.elefans.com/category/jswz/34/1769317.html style=小技巧之文件差异对比"/>

Linux小技巧之文件差异对比

提起文件差异对比,最常想到的是diff,如果内容少还好,内容多的话就不太友好,其实 Linux 下还有一个小工具能够更加方便的对比两个文件。
下面分别进行介绍:

目录

    • diff
    • comm
      • 只查看file1 中差异文件
      • 只查看file2中差异文件
      • 查看两个文件相同部分

先构造两个文件:

for i in {a..z} ; do echo $i; done >file1
for i in {h..z} ; do echo $i; done >file2
for i in {1..5} ; do echo $i; done >>file2

diff

先看下命令的说明:

diff - compare files line by line

# diff file1 file2
1,7d0
< a
< b
< c
< d
< e
< f
< g
26a20,24
> 1
> 2
> 3
> 4
> 5

如果只想查找存在 file1 中的差异内容,需要进行过滤

# diff file1 file2|grep '^<'
< a
< b
< c
< d
< e
< f
< g

comm

comm - compare two sorted files line by line

使用 comm 比较前,最好对文件内容进行排序。

comm 相关参数:

   -1     suppress column 1 (lines unique to FILE1)-2     suppress column 2 (lines unique to FILE2)-3     suppress column 3 (lines that appear in both files)

直接看例子:

只查看file1 中差异文件

# comm -23 file1 file2
a
b
c
d
e
f
g
comm: file 2 is not in sorted order
comm: input is not in sorted order

只查看file2中差异文件

# comm -13 file1 file2
comm: file 2 is not in sorted order
1
2
3
4
5
comm: input is not in sorted order

查看两个文件相同部分

# comm -12 file1 file2
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
comm: file 2 is not in sorted order
comm: input is not in sorted order

更多推荐

Linux小技巧之文件差异对比

本文发布于:2023-11-16 08:42:04,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1614912.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:小技巧   差异   文件   Linux

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!