使用diff比較兩個資料夾

2021-04-20 13:46:24 字數 667 閱讀 8461

最近經常的要比較不同版本的原始檔,由於檔案比較多,比較想通過兩個目錄的比較直接得到,版本之間的不同之處,開始使用beyond compare,感覺很好用,但是不太習慣紅色的配色,又比較懶惰的不想更改配色,所以選擇了使用diff配合vim的方法來檢視檔案的不同。

經過檢視diff的幫助說明,得到下面的命令。

假如我要比較目錄a和目錄b,使用下面的命令

diff -c -a -b -x *.bak -x *.log a b > ab.diff

gvim ab.diff

這樣就可以方便的檢視不同了,目前我的vim的diff配色比較舒適。

解釋一下引數的意義

-c 採用content的format輸出different

-a 強制使用text的模式

-b 忽略空白的不同

-x 過濾掉所比較目錄中一些不想比較的檔案型別,可以使用其他的pattern

實際上如果需要過濾的檔案型別比較多的時候,使用-x這個選項就有點麻煩了,檢視了文件之後,diff提供了更加方便的引數過濾檔案。

-x excludefile 忽略在excludefile中的檔案型別,注意每種檔案佔一行

這個引數實際上在使用dos的命令列xcopy的時候也是有用過的。

xcopy /e /c /y /exclude:file srcdir destdir

使用diff比較兩個資料夾

diff c a r b x bak a b ab.diff c 採用content的format輸出different a 強制使用text的模式 r 遞迴到子目錄裡去 b 忽略空白的不同 x 過濾掉所比較目錄中一些不想比較的檔案型別,可以使用其他的pattern 實際上如果需要過濾的檔案型別比較...

matlab 比較兩個資料夾內CSV資料夾

比較兩個資料夾的檔名,不同則刪除 比較兩個資料夾下檔名,輸出檔案不同的檔名 stra strb str11 stra,csv jiegou1 dir str11 等價於下面這行 geshu1 length jiegou1 str12 strb,csv jiegou2 dir str12 等價於下面這...

linux下合併兩個資料夾

一 我想把自己自定義的軟體統一放到man手冊路徑裡。如何和現有的 usr local share資料夾合併起來,原來的檔案還在?1 下面是解壓出的自定義的bashdb除錯軟體 2 和現有的man文件整合起來,用小r測試檔案遞迴copy並沒有生效,建議用大r 參考 f 強制覆蓋,不詢問yes no i...