cmp - Compares two files
cmp [-l | -s] file1 file2
Interfaces documented on this reference page conform to
industry standards 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 compared.
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
subsequence 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
Note that bytes and lines reported by cmp are numbered
The following exit values are returned: The files are
identical. The files differ. This includes files of different
lengths that are identical in the first part of
both files. An error occurred.
To determine whether two files are identical, enter: cmp
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 prog.o
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
ENVIRONMENT VARIABLES [Toc] [Back]
The following environment variables affect the execution
of cmp: Provides 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 variables contain
an invalid setting, the utility behaves as if none of
the variables had been defined. If set to a non-empty
string value, overrides 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 multibyte
characters in arguments). Determines the locale for the
format and contents of diagnostic messages written to
standard error. Determines the location of message catalogues
for the processing of LC_MESSAGES.
Commands: comm(1), bdiff(1), diff(1), diff3(1), sdiff(1)
[ Back ]