cmp: Compare two files
Compare two files, and if they differ, tells the first byte and
line number where they differ.
You can use the `cmp? command to show the offsets and line numbers where two
files differ. `cmp? can also show all the characters that differ between the
two files, side by side.
Syntax
cmp options... FromFile [ToFile]
Options
Multiple single letter options (unless they take an argument)
can be combined into a single command line word:
so `-cl? is equivalent to -c -l.
-c
Print the differing characters. Display control characters as a
`^? followed by a letter of the alphabet and precede characters
that have the high bit set with `M-? (which stands for "meta").
--ignore-initial=BYTES
Ignore any differences in the the first BYTES bytes of the input
files. Treat files with fewer than BYTES bytes as if they are
empty.
-l
Print the (decimal) offsets and (octal) values of all differing
bytes.
--print-chars
Print the differing characters. Display control characters as a
`^? followed by a letter of the alphabet and precede characters
that have the high bit set with `M-? (which stands for "meta").
--quiet
-s
--silent
Do not print anything; only return an exit status indicating
whether the files differ.
--verbose
Print the (decimal) offsets and (octal) values of all differing
bytes.
-v
--version
Output the version number of `cmp?.
The file name `-? is always the standard input. `cmp? also uses the
standard input if one file name is omitted.
An exit status of 0 means no differences were found, 1 means some
differences were found, and 2 means trouble.
Example
$ cmp tnsnames.ora tnsnames.old
Notes
`cmp? reports the differences between two files character by character, instead
of line by line. As a result, it is more useful than `diff? for comparing binary
files. For text files, `cmp? is useful mainly when you want to know only whether
two files are identical.
For files that are identical, `cmp? produces no output. When the files differ,
by default, `cmp? outputs the byte offset and line number where the first difference
occurs. You can use the `-s? option to suppress that information, so that `cmp?
produces no output and reports whether the files differ using only its exit
status.
Unlike `diff?, `cmp? cannot compare directories; it can only compare two files.
"First rate people hire other first rate people. Second rate people hire
third rate people. Third rate people hire fifth rate people" - André Weil