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.