cmp(1)cmp(1)NAMEcmp - Compares two files
SYNOPSIScmp [-l | -s] file1 file2
Interfaces documented on this reference page conform to industry stan‐
dards as follows:
Refer to the standards(5) reference page for more information about
industry standards and associated tags.
Prints the byte number (decimal) and the differing bytes (octal) for
each difference. Does not print data for differing files; returns only
an exit value.
The path name of a file to be compared. The path name of a file to be
The cmp command compares two files.
If file1 or file2 is - (dash), standard input is used for that file.
It is an error to specify - for both files.
By default, the cmp command prints no information if the files are the
same. If the files differ, cmp prints the byte and line number where
the difference occurred.
The cmp command also specifies whether one file is an initial subse‐
quence of the other (that is, if the cmp command reads an End-of-File
character in one file before finding any differences). Usually, you
use the cmp command to compare nontext files and the diff command to
compare text files.
Note that bytes and lines reported by cmp are numbered from 1.
The following exit values are returned: The files are identical. The
files differ. This includes files of different lengths that are iden‐
tical in the first part of both files. An error occurred.
To determine whether two files are identical, enter: cmp prog.o.bak
The preceding command compares the files prog.o.bak and prog.o.
If the files are identical, a message is not displayed. If the
files differ, the location of the first difference is displayed.
For instance: prog.o.bak prog.o differ: byte 5, line 1
If the message cmp: EOF on prog.o.bak is displayed, then the
first part of prog.o is identical to prog.o.bak, but there is
additional data in prog.o.
If the message cmp: EOF on prog.o is displayed, it is prog.o.bak
that is the same as prog.o but also contains addition data. To
display each pair of bytes that differ, enter: cmp-l prog.o.bak
This compares the files and then displays the byte number (in
decimal) and the differing bytes (in octal) for each difference.
For example, if the fifth byte is octal 101 in prog.o.bak and
141 in prog.o, then the cmp command displays: 5 101 141
The following environment variables affect the execution of cmp: Pro‐
vides a default value for the internationalization variables that are
unset or null. If LANG is unset or null, the corresponding value from
the default locale is used. If any of the internationalization vari‐
ables contain an invalid setting, the utility behaves as if none of the
variables had been defined. If set to a non-empty string value, over‐
rides the values of all the other internationalization variables.
Determines the locale for the interpretation of sequences of bytes of
text data as characters (for example, single-byte as opposed to multi‐
byte characters in arguments). Determines the locale for the format
and contents of diagnostic messages written to standard error. Deter‐
mines the location of message catalogues for the processing of LC_MES‐
Commands: comm(1), bdiff(1), diff(1), diff3(1), sdiff(1)