Linux diff命令詳解

2021-05-31 21:51:41 字數 2532 閱讀 5229

linux中比較檔案或者資料夾差異,經常用到diff命令,先解釋如下。

用法:diff [選項]... files

功能:逐行比較檔案。

常用選項說明:

-i  --ignore-case  忽略檔案內容大小寫的區別。

--ignore-file-name-case  忽略檔名大小寫的區別。

--no-ignore-file-name-case  不忽略檔名大小寫的區別。

-e  --ignore-tab-expansion  忽略由製表符寬度造成的差異。

-b  --ignore-space-change  忽略由空格數不同造成的差異。

-w  --ignore-all-space   忽略所有空格。

-b  --ignore-blank-lines  忽略任何因空行而造成的差異。

-i re  --ignore-matching-lines=re  如果某行匹配正規表示式,則忽略由該行造成的差異。

--strip-trailing-cr  去除輸入內容每行末端的 carriage return 字元。

-a  --text  所有檔案都以文字方式處理。

-c  -c 行數  --context[=行數]  顯示指定《行數》(預設 3 行)copied 格式的上下文

-u  -u 行數  --unified[=行數]  顯示指定《行數》(預設 3 行)unified 格式的上下文

--label 標識                       使用《標識》代替檔名稱。

-p  --show-c-function           顯示和每個差異有關的 c 函式名稱。

-f re  --show-function-line=re  顯示最接近而符合《正規表示式》的一行。

-q  --brief  只顯示檔案是否不同。

-e  --ed 以 ed script 方式輸出。

--normal 以正常的 diff 方式輸出。

-n  --rcs  以 rcs diff 格式輸出。

-y  --side-by-side         以兩列併排的方式顯示。

-w num  --width=num      每行顯示最多 num (預設 130) 個字元。

--left-column            當有兩行相同時只顯示左邊的一行。

--suppress-common-lines  當有兩行相同時不會顯示。

-d name  --ifdef=name  輸出的內容以『#ifdef name』方式標明差異。

-l  --paginate 將輸出送至『pr』指令來分頁。

-t  --expand-tabs  將輸出中的 tab 轉換成空格。

-t  --initial-tab  每行先加上 tab 字元,使 tab 字元可以對齊。

--tabsize=num  定位字元 (tab) 的寬度,預設為 8 個空格寬。

--suppress-blank-empty  suppress space or tab before empty output lines.

-r  --recursive  連同所有子目錄一起比較。

-n  --new-file  不存在的檔案以空檔案方式處理。

--unidirectional-new-file  若第一檔案案不存在,以空檔案處理。

-s  --report-identical-files   當兩個一樣時仍然顯示結果。

-x pat  --exclude=pat  排除匹配 pat 的檔案。

-x file  --exclude-from=file   排除所有匹配在 file 中列出的模式的檔案。

-s file  --starting-file=file  當比較目錄時,由 file 開始比較。

--from-file=file1  將 file1 和運算元中的所有檔案/目錄作比較。file1 可以是目錄。

--to-file=file2    將運算元中的所有檔案/目錄和 file2 作比較。file2 可以是目錄。

--horizon-lines=num      (此選項不做處理)

-d  --minimal  盡可能找出最小的差異。

--speed-large-files     假設檔案十分大而且其中含有許多微小的差異。

-v  --version  輸出版本資訊。

--help  輸入本幫助。

files 的格式可以是『file1 file2』、『dir1 dir2』、『dir file...』或

『file... dir』。

如果使用 --from-file 或 --to-file 選項,files 的格式則不受限制。

如果 file 是『-』,則由標準輸入讀取內容。

如果輸入相同,則退出狀態為 0;1 表示輸入不同;2 表示有錯誤產生。

用於資料夾或者檔案比較時經常用到的引數:-i/-n/-q/-r/-w/-b/-b/-u/-y/--suppress-common-lines等,同時結合「>」重定向和grep等命令過濾、儲存比較結果。

linux diff 命令詳解

首頁 講述 我與51cto不得不說的故事 部落格互動專題 之 2009,痛並快樂著的it人 2009 02 13 14 01 37 標籤 linux diff 命令 推送到技術圈 功能說明 比較檔案的差異。語 法 diff abbcdefhilnnppqrsttuvwy 行數 c 行數 d 巨集名稱...

Linux diff命令詳解

diff difference 命令常用來比較兩個檔案中的內容。diff 命令在最簡單的情況下,比較兩個檔案的不同。如果使用 代替 檔案 引數,則要比較的內容將來自標準輸入。下面良許小編就將linux diff命令進行詳述,希望對大家有所幫助。diff 命令是以逐行的方式比較文字檔案的異同處。如果該...

Linux Diff命令用法

linux diff命令用於比較檔案的差異。diff以逐行的方式,比較文字檔案的異同處。如果指定要比較目錄,則diff會比較目錄中相同檔名的檔案,但不會比較其中子目錄。語法 diff abbcdefhilnnppqrsttuvwy 行數 c 行數 d 巨集名稱 i 字元或字串 s 檔案 w 寬度 x...