您的位置:首页 > 其它

使用diff和patch指令生成文件差异和还原文件

2013-07-10 11:34 211 查看
创建一个新的文件夹test然后进入test
mkdir test
cd test

首先创建文件a
vim a.txt
随便输入一段文字后保存不退出。



稍微修改一下内容,另存为b.txt。



使用以下指令生成文件差异
diff -u a.txt b.txt > diff1.txt
这是以a为原始文件,b为目标文件
打开diff1.txt看看



白色字体代表两个文件都一样的,其它不一样的额地方以-号开头(紫色字体)代表原始文件,以+开头(蓝色字体)代表目标文件。
也可以以b为原始文件,a为目标文件。
diff -u b.txt a.txt > diff2.txt
打开diff2.txt就成了下图这样。




现在删除掉a.txt
rm a.txt

使用以下指令就可以将b.txt的内容还原为a.txt的内容
patch -R b.txt < diff1.txt
或者
patch -R b.txt < diff2.txt
结果是一样的。

注:diff和patch有个缺点不能处理二进制文件,git才可以。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: