1, diff -u用于一体化输出:
[email protected]:~$ diff -u v1 v2 --- v1 2015-06-27 20:43:50.530653196 +0800 +++ v2 2015-06-27 20:43:53.530653196 +0800 @@ -1,7 +1,7 @@ 4 3 2 -5 +4 7 7 -8 + [email protected]:~$
其中,以 + 起始的是新加入的行,以- 起始的是删除的行。
2, patch文件可以通过diff的输出重定向到一个文件来生成:
[email protected]:~$ diff -u v1 v2 >v.path
3,可以用patch命令将v.patch应用于任意文件。当应用于v1时,就可以得到v2;当应用于v2时就可以得到v1:
[email protected]:~$ patch -p1 v1 <v.patch patching file v1
[email protected]:~$ diff v1 v2 [email protected]:~$
4,撤销对v1作出的修改:
[email protected]:~$ patch -p1 v1 < v.patch patching file v1 [email protected]:~$ diff v1 v2 4c4 < 5 --- > 4 7c7 < 8 --- > [email protected]:~$
5, diff命令可以以递归的形式作用域目录。它会对目录中所有内容生成差异化输出:
[email protected]:~$ diff -Naur v1v v2v diff -Naur v1v/v1 v2v/v1 --- v1v/v1 2015-06-27 21:04:02.550408195 +0800 +++ v2v/v1 1970-01-01 08:00:00.000000000 +0800 @@ -1,7 +0,0 @@ -4 -3 -2 -5 -7 -7 -8 diff -Naur v1v/v2 v2v/v2 --- v1v/v2 1970-01-01 08:00:00.000000000 +0800 +++ v2v/v2 2015-06-27 21:04:07.998408195 +0800 @@ -0,0 +1,7 @@ +4 +3 +2 +4 +7 +7 + [email protected]:~$
时间: 2024-10-13 03:35:48