Diff命令詳解例子

2021-03-04 02:09:21 字數 1236 閱讀 3797

該命令的功能為逐行比較兩個文字檔案,列出其不同之處。它比***m命令完成更複雜的檢查。它對給出的檔案進行系統的檢查,並顯示出兩個檔案中所有不同的行,不要求事先對檔案進行排序。

語法:diff [選項] file1 file2

說明:該命令告訴使用者,為了使兩個檔案file1和file2一致,需要修改它們的哪些行。如果用「- 」表示file1或fiie2,則表示標準輸入。

如果file1或file2是目錄,那麼diff將使用該目錄中的同名檔案進行比較。

例如: diff /usr/xu mine

把目錄/usr/xu 中名為mine的檔案與當前目錄中的mine檔案進行比較。

通常輸出由下述形式的行組成:

n1 a n3,n4

n1,n2 d n3

n1,n2 c n3,n4 這些行類似ed命令把filel轉換成file2。字母(a、d和c)之前的行號(n1,n2)是針對file1的,其後面的行號(n3,n4)是針對file2的。字母a、d和c分別表示附加、刪除和修改操作。

在上述形式的每一行的後面跟隨受到影響的若干行,以「<」打頭的行屬於第乙個檔案,以「>」打頭的行屬於第二個檔案。

diff能區別塊和字元裝置檔案以及fifo(管道檔案),不會把它們與普通檔案進行比較。

如果file1和file2都是目錄,則diff會產生很多資訊。

如果乙個目錄中只有乙個檔案,則產生一條資訊,指出該目錄路徑名和其中的檔名。

diff各選項的含義如下:

- b 忽略行尾的空格,而字串中的乙個或多個空格符都視為相等。

如how are you與how are you被視為相同的字串。

- c 採用上下文輸出格式(提供三行上下文)。

- c n 採用上下文輸出格式(提供n行上下文)。

- e 產生乙個合法的ed指令碼作為輸出。

- r 當file1和file2是目錄時,遞迴作用到各檔案和目錄上。

例如,檔案ml.c的內容為(左邊行號是有意加上的,以便前後對照):

1 main( )

5 檔案m2.c的內容為:

1 main()

2輸入命令:

$ diff m1.c m2.c

螢幕上顯示:

3,5 c 3,6

printf(「hello!\n」);

}<5>3int n,m;

>4 n=10 ;

>5 printf ( 「 % d \\\\ n 」 , m = n * 10);

>6 }

AT命令詳解

at命令解釋 1 常用操作 1.1 at 命令解釋 檢測module與串列埠是否連通,能否接收at命令 命令格式 at 命令返回 ok 與串列埠通訊正常 無返回,與串列埠通訊未連通 測試結果 at ok 1.2 at csq 命令解釋 檢查網路訊號強度和sim卡情況 命令格式 at csq 命令返回...

route命令詳解

在windows下手動設定路由主要在dos系統中命令符下 在執行輸入欄中鍵入 mand或者cmd即可 進行。鍵入命令route回車會出現大約幾十行英文說明,主要解說在windows系統中如何新增 刪除 修改路由。現簡單介紹如下 route命令格式如下 route f p mand destinati...

rpm命令詳解

一 rpm格式檔案簡介 rpm是 redhat package manager,是有紅帽公司開發的套件管理程式。srpm顧名思義,他是 source rpm 的意思 兩種檔案的格式 rpm rpm 的格式,已經經過編譯且包裝完成的 rpm 檔案 xx.src.rpm srpm的格式,包含未編譯的原始...