diff log2013.log log2014.log -y -W 50输出:****[root@localhost test3]# diff log2014.log log2013.log -y -W 50
****2013-01 2013-01
****2013-02 2013-02
****2014-03 | 2013-03
****2013-04 2013-04
****2013-05 2013-05
****2013-06 2013-06
****2013-07 2013-07
****2013-07 | 2013-08
****2013-09 2013-09
****2013-10 2013-10
****2013-11 <
****2013-12 <
****[root@localhost test3]# diff log2013.log log2014.log -y -W 50
****2013-01 2013-01
****2013-02 2013-02
****2013-03 | 2014-03
****2013-04 2013-04
****2013-05 2013-05
****2013-06 2013-06
****2013-07 2013-07
****2013-08 | 2013-07
****2013-09 2013-09
****2013-10 2013-10
** > 2013-11 **> 2013-12说明:“|”表示前后2个文件内容有不同
****“<”表示后面文件比前面文件少了1行内容
“>”表示后面文件比前面文件多了1行内容实例3:上下文输出格式****命令:
diff log2013.log log2014.log -c输出:****[root@localhost test3]# diff log2013.log log2014.log -c
******* log2013.log 2012-12-07 16:36:26.000000000 +0800
****— log2014.log 2012-12-07 18:01:54.000000000 +0800
*******************
******* 1,10 ****
** 2013-01 2013-02**! 2013-03
** 2013-04 2013-05 2013-06 2013-07**! 2013-08
** 2013-09 2013-10**— 1,12 ----
** 2013-01 2013-02**! 2014-03
** 2013-04 2013-05 2013-06 2013-07**! 2013-07
** 2013-09 2013-10**+ 2013-11
****+ 2013-12[root@localhost test3]# diff log2014.log log2013.log -c
******* log2014.log 2012-12-07 18:01:54.000000000 +0800
****— log2013.log 2012-12-07 16:36:26.000000000 +0800
*******************
******* 1,12 ****
** 2013-01 2013-02**! 2014-03
** 2013-04 2013-05 2013-06 2013-07**! 2013-07
** 2013-09 2013-10**- 2013-11
****- 2013-12
****— 1,10 ----
** 2013-01 2013-02**! 2013-03
** 2013-04 2013-05 2013-06 2013-07**! 2013-08
** 2013-09 **2013-10[root@localhost test3]#****说明:这种方式在开头两行作了比较文件的说明,这里有三中特殊字符:“+” 比较的文件的后者比前着多一行
****“-” 比较的文件的后者比前着少一行
“!” 比较的文件两者有差别的行实例4:统一格式输出****命令:
diff log2014.log log2013.log -u输出:****[root@localhost test3]# diff log2014.log log2013.log -u
****— log2014.log 2012-12-07 18:01:54.000000000 +0800
****+++ log2013.log 2012-12-07 16:36:26.000000000 +0800
****@@ -1,12 +1,10 @@
** 2013-01 2013-02**-2014-03
****+2013-03
** 2013-04 2013-05 2013-06 2013-07**-2013-07
****+2013-08
** 2013-09 2013-10**-2013-11
-2013-12说明:它的第一部分,也是文件的基本信息:— log2014.log 2012-12-07 18:01:54.000000000 +0800
+++ log2013.log 2012-12-07 16:36:26.000000000 +0800"—“表示变动前的文件,”+++“表示变动后的文件。**第二部分,变动的位置用两个@作为起首和结束。 **@@ -1,12 +1,10 @@****前面的”-1,12"分成三个部分:减号表示第一个文件(即log2014.log),"1"表示第1行,“12"表示连续12行。合在一起,就表示下面是第一个文件从第1行开始的连续12行。同样的,”+1,10"表示变动后,成为第二个文件从第1行开始的连续10行。实例5:比较文件夹不同命令:
diff test3 test6输出:****[root@localhost test]# diff test3 test6
****Only in test6: linklog.log
****Only in test6: log2012.log
****diff test3/log2013.log test6/log2013.log
****1,10c1,3
****< 2013-01
****< 2013-02
****< 2013-03
****< 2013-04
****< 2013-05
****< 2013-06
****< 2013-07
****< 2013-08
****< 2013-09
****< 2013-10
****—
****> hostnamebaidu=baidu.com
****> hostnamesina=sina.com
****> hostnames=true
****diff test3/log2014.log test6/log2014.log
****1,12d0
****< 2013-01
****< 2013-02
****< 2014-03
****< 2013-04
****< 2013-05
****< 2013-06
****< 2013-07
****< 2013-07
****< 2013-09
****< 2013-10
****< 2013-11
****< 2013-12
****Only in test6: log2015.log
****Only in test6: log2016.log
****Only in test6: log2017.log
[root@localhost test]# **实例6:比较两个文件不同,并生产补丁**命令:
diff -ruN log2013.log log2014.log >patch.log输出:****[root@localhost test3]# diff -ruN log2013.log log2014.log >patch.log
****[root@localhost test3]# ll
****总计 12
****-rw-r–r-- 2 root root 80 12-07 16:36 log2013.log
****-rw-r–r-- 1 root root 96 12-07 18:01 log2014.log
****-rw-r–r-- 1 root root 248 12-07 21:33 patch.log
****[root@localhost test3]# cat patc.log
****cat: patc.log: 没有那个文件或目录
**[root@localhost test3]# cat patch.log **— log2013.log 2012-12-07 16:36:26.000000000 +0800
****+++ log2014.log 2012-12-07 18:01:54.000000000 +0800
****@@ -1,10 +1,12 @@
** 2013-01 2013-02**-2013-03
****+2014-03
** 2013-04 2013-05 2013-06 2013-07**-2013-08
****+2013-07
** 2013-09 2013-10**+2013-11
****+2013-12[root@localhost test3]#实例7:打补丁命令:
输出:[root@localhost test3]# cat log2013.log
****2013-01
****2013-02
****2013-03
****2013-04
****2013-05
****2013-06
****2013-07
****2013-08
****2013-09
**2013-10[root@localhost test3]# patch log2013.log patch.log **patching file log2013.log