cmp (Unix)
cmp是Unix及類Unix操作系統計算機系統上使用的命令行實用程序。它能比較兩個任何類型的文件,並將結果寫入標準輸出。默認情況下,如果文件相同,cmp沒有任何輸出;如果不同,則報告第一處不同所在的字節和行號。
開關
可以通過使用命令行開關來指定cmp的行為。GNU版本的cmp支持的開關有:
-b, --print-bytes
- 打印出內容相異的字節。
-i SKIP, --ignore-initial=SKIP
- 略過輸入內容的前SKIP字節。
-i SKIP1:SKIP2, --ignore-initial=SKIP1:SKIP2
- 略過FILE1的前SKIP1個字節和文件FILE2的前SKIP2個字節。
-l, --verbose
- 輸出所有不同字節的(十進制)字節數和(八進制)值,而不是默認的標準輸出。另外,如果一個文件比另一個短,則輸出EOF消息。
-n LIMIT, --bytes=LIMIT
- 最多比較LIMIT個字節。
-s, --quiet, --silent
- 什麼都不輸出;僅生成返回狀態。
-v, --version
- 顯示版本信息。
--help
- 顯示幫助信息。
用於計數字節的操作數通常以十進制表示,要表示八進制數,可以在數字前加「0
」,十六進制數則是「0x
」。
字節計數後可跟一個後綴以指定該計數的倍數;在這種情況下,省略數字部分則表示1。單獨一個詞頭字母,或後跟「iB
」,指定使用1024的冪。詞頭字母後跟「」指定1000的冪。例如,「-n 4M
」和「-n 4MiB
」相當於「-n 4194304
」,而「-n 4MB
」相當於「-n 4000000
」。詞頭與十進制倍數的國際單位制詞頭[1]或二進制倍數的IEC 60027-2詞頭[2]兼容。
返回值
- 0 — 文件相同
- 1 — 文件不同
- 2 — 無法訪問或缺少參數
參見
參考
外部連結
- 單一UNIX®規範第7期,由國際開放標準組織發布 : compare two files – 命令與工具(Commands & Utilities)參考,
- Comparing and Merging Files: Invoking cmp(頁面存檔備份,存於網際網路檔案館) The section of the manual of GNU cmp in the diffutils free manual.