使用diff和patch指令生成文件差別和還原文件

建立一個新的文件夾test而後進入testgit

mkdir testvim

cd test字體

 

首先建立文件aspa

vim a.txtblog

隨便輸入一段文字後保存不退出。it

稍微修改一下內容,另存爲b.txt。test

使用如下指令生成文件差別二進制

diff -u a.txt b.txt > diff1.txtim

這是以a爲原始文件,b爲目標文件img

打開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才能夠。

相關文章
相關標籤/搜索