diff [-bBi] from_file to_file
from_file:作为源文件的文件名
to_file:作为目的比较文件的文件名
注意:from_file 或 to_file 可以用"-" 代表 “Standard Input”
-b :忽略一行当中仅有多余的空格
-B:忽略空白间的区别
-i:忽略大小写
a.txt
1aaaaaaaaaaa
2bbbbbbbbbbb
3ccccccccccc
4ddddddddddd
5eeeeeeeeeee
6fffffffffff
b.txt
1aaaaaaaaaaa
2bbbbbbbbbbb
3xxxxxxxxxxx
4ddddddddddd
6fffffffffff
diff a.txt b.txt
3c3 《== 左边的第3行被替换(c)成右边的第3行
< 3ccccccccccc 《== 左边第3行内容
---
> 3xxxxxxxxxxx 《== 右边第3行内容
5d4 《== 左边的第5行被删除(d)了,基准是右边的第4行
< 5eeeeeeeeeee 《== 列出左边(<)文件被删除那一行
做成diff文件
diff -Nuar Temp/a.txt Temp/b.txt > txt.patch
txt.patch
--- Temp/a.txt 2015-05-14 09:59:32.201103524 +0800
+++ Temp/b.txt 2015-05-14 09:59:59.625102956 +0800
@@ -1,6 +1,5 @@
1aaaaaaaaaaa
2bbbbbbbbbbb
-3ccccccccccc
+3xxxxxxxxxxx
4ddddddddddd
-5eeeeeeeeeee
6fffffffffff
打patch
patch -pN < patch_file <== 更新
patch -R -pN < patch_file <== 还原
-p: 后面的N表示取消几层目录
-R: 代表还原,将新文件还原成旧文件