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.
$ cmp tnsnames.ora tnsnames.old
'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
Related linux commands:
comm - Compare two sorted files line by line.
diff - Display the differences between two files.
diff3 - Show differences among three files.
dircmp - Compare 2 directories.
sdiff - merge two files interactively.
Equivalent Windows commands: COMP / FC - Compare and display Characters/Lines which do not match. (also the WINDIFF GUI)