linux系统中diff命令

1、测试文件

[root@centos79 test]# cat a.txt
3 5 6 s f
s d g d e
w f g e k
[root@centos79 test]# cat b.txt
3 5 6 s f
s d g d e
w f g e k

 

2、直接使用diff

[root@centos79 test]# cat a.txt
3 5 6 s f
s d g d e
w f g e k
[root@centos79 test]# cat b.txt
3 5 6 s f
s d g d e
w f g e k
[root@centos79 test]# diff a.txt b.txt

 

3、修改b.txt测试

[root@centos79 test]# cat a.txt
3 5 6 s f
s d g d e
w f g e k
[root@centos79 test]# cat b.txt
3 5 6 s f
s d g d e       xxx
w f g e k
[root@centos79 test]# diff a.txt b.txt    ## 以b.txt文件为参照,  a.txt文件的第二行改为 。。。才和b.txt一样
2c2
< s d g d e
---
> s d g d e     xxx

 

4、-i选项忽略大小写

[root@centos79 test]# cat a.txt
3 5 6 s f
s d g d e
w f g e k
[root@centos79 test]# cat b.txt
3 5 6 s f
s d g d E
w f g e k
[root@centos79 test]# diff a.txt b.txt
2c2
< s d g d e
---
> s d g d E
[root@centos79 test]# diff -i a.txt b.txt

 

5、-B选项忽略空行

[root@centos79 test]# cat a.txt
3 5 6 s f
s d g d e
w f g e k
[root@centos79 test]# cat b.txt
3 5 6 s f
s d g d e


w f g e k
[root@centos79 test]# diff a.txt b.txt
2a3,4
>
>
[root@centos79 test]# diff -B a.txt b.txt

 

6、-b选项忽略空字符

[root@centos79 test]# cat a.txt
3 5 6 s f
s d g d e
w f g e k
[root@centos79 test]# cat b.txt
3 5 6 s f
s d      g d e
w f g e k
[root@centos79 test]# diff a.txt b.txt
2c2
< s d g d e
---
> s d      g d e
[root@centos79 test]# diff -b a.txt b.txt

 

7、d表示(delete)删除

[root@centos79 test]# cat a.txt
3 5 6 s f
s d g d e
w f g e k
[root@centos79 test]# cat b.txt
3 5 6 s f
[root@centos79 test]# diff a.txt b.txt  ## 表示a.txt和b.txt文件相比,a.txt删除2、3行后才和b.txt的1行相同
2,3d1
< s d g d e
< w f g e k

 

8、a表示append(追加)

[root@centos79 test]# cat a.txt
3 5 6 s f
s d g d e
w f g e k
[root@centos79 test]# cat b.txt
3 5 6 s f
[root@centos79 test]# diff b.txt a.txt  ## 表示b.txt和a.txt文件相比,在b.txt第1行的后面追加2、3行才和a.txt相同
1a2,3
> s d g d e
> w f g e k

 

linux系统中diff命令

上一篇:Shell编程之循环语句


下一篇:C# .net core 定时器 System.Timers.Timer