UNIX - dircmp 指令

【功能】

對二個目錄下的檔案進行比較

【語法】

dircmp [-d] [-s] [-wn ] dir1 dir2

【說明】

dircmp 指令會對指定的二個目錄下的檔案進行比較,並將結果整理後印出。這結果包含了有那些檔案僅存在於 dir1 或 dir2的目錄下,以及有那些是名稱、內容都相同以及只有名稱相同而內容卻不同的檔案。

在沒給予任何選項的情形下,dircmp 指令對於二個目錄下檔名相同、內容卻不同的檔案並不會說明內容不同之處,若要求說明內容的不同處,則應給予 -d 選項。

【選項】

選 項 說 明
-d(diff) 對於同檔名而內容不同的檔案進行詳細的比較,並以 diff 指令的輸出格式印出如何才能更改為相同的內容。
-s(silent) 對於完全相同的檔案不產生任何訊息。
-wn(width) 改變輸出行的寬度為 n 個字元,預設的值為 72 個字元。

★註:選項 -w 是在 SVR3 版本時才開始提供。

【範例】

1. 比較二個目錄:

$ ls -l direc1 direc2
direc1:
total 6
-rw-r--r-- 1 eric other 42 Nov 1 07:24 spring
-rw-r--r-- 1 eric other 84 Nov 1 06:13 summer
-rw-r--r-- 1 eric other 88 Nov 1 07:17 winter
direc2:
total 6
-rw-r--r-- 1 eric other 56 Nov 1 07:18 autumn
-rw-r--r-- 1 eric other 42 Nov 1 07:18 spring
-rw-r--r-- 1 eric other 84 Nov 1 07:28 summer
$ dircmp direc1 direc2
Nov 1 07:31 1992 direc1 only and direc2 only Page 1
./winter

./autumn

Nov 1 07:31 1992 Comparison of direc1 direc2 Page 1
directory
different ./spring
same ./summer

在這個印出的結果中首先是有 1 個檔案 winter 只存在於 direc1 這個目錄下,以及 1 個檔案 autumn 只存在於 direc2 這個目錄下。接著的是指出二個目錄下皆存在的檔案,有檔案 same 是內容完全相同,而檔案 spring 的內容則不同。

2. 對於二個目錄下的檔案詳細比較其內容:

$ dircmp -s -d direc1 direc2
Nov 1 07:33 1992 direc1 only and direc2 only Page 1
./winter ./autumn
Nov 1 07:33 1992 Comparison of direc1 direc2 Page 1
different ./spring
Nov 1 07:33 1992 diff of ./spring in direc1 and direc2 Page 1
2c2
< aba
---
> abandoned

在指定的 direc1、direc2 二個目錄下的 spring 檔案內容不同。由於使用選項 -s,使檔名內容相同的檔案無任何訊息出現。而選項 -d 則使檔名相同且內容不同的檔案會以 diff 指令的輸出格式印出。

網路電視    旅遊景點    算命    象棋殘局    回首頁