Linuxコマンド辞典 cmpコマンド(テキスト処理)

2つのファイルを1バイトごとに比較する「cmp」コマンドの概要と使い方を記載しています。

RHEL Fedora CentOS Vine Deblan Ubuntu Plamo

参考サイト:Man page of INSTALL

概要・使用方法

2つのファイルをバイト単位で比較します。1バイトずつ比較し、標準出力にその結果を書き出します。最初に違いが見つかったバイト位置と行番号を表示します。どこの相違点が異なるか調べるかは、diffコマンドを使用したほうが良いでしょう。

ファイル名に「-」を指定すると、標準入力からの入力を扱います。指定した2つのファイルに差分がない場合は、何も出力せずに終了します。差分がある場合は、バイト位置と行を表示します。同名の2つの

書式

$ cmp [オプション] ファイル名1 [ファイル名2]

オプション

-b
–print-bytes
異なるバイトを表示する
-i 数値1[:数値2]
–ignore-initial=数値1[:数値2]
数値1のバイト位置までは差分があっても無視する。
数値2を指定した場合は、比較する2つ目のファイルの数値2のバイト位置までを無視する
-n 数値指定した数値のバイト位置までで比較する
-s–bytes=数値2つのファイルが異なるかどうかのみを表示する

2つのファイルを比較

$ cmp ファイル名 ファイル名

実行結果

[sunarin@localhost work]$ cmp comm1.txt comm2.txt 
comm1.txt comm2.txt 異なります: バイト 9、行 5
[sunarin@localhost work]$ 

テキストとパイプからの入力を比較する

$ cat ファイル名 | cmp ファイル名 -

実行結果

[sunarin@localhost work]$ cat comm1.txt |cmp comm2.txt -
comm2.txt - 異なります: バイト 9、行 5
[sunarin@localhost work]$