Compare Files - Cmp Command | Online Free DevTools by Hexmos

Compare files byte by byte with the Cmp command. Find differences, output specific details, and control comparison limits. Free online tool for developers.

Cmp Command: Compare Files

The cmp command is a powerful utility for comparing two files byte by byte. It is particularly useful for identifying the exact location of the first difference between files, which is crucial for debugging, verifying data integrity, or understanding changes between versions.

Basic File Comparison

To output the byte and line number of the first difference found between two files, use the basic cmp command:

cmp <path/to/file_1> <path/to/file_2>

Detailed Byte Comparison

To see the first differing character between two files, employ the -b option:

cmp -b <path/to/file_1> <path/to/file_2>

Verbose Difference Output

For a comprehensive view of every difference between two files, including byte values and character representations, use the --verbose flag in conjunction with -b:

cmp -b --verbose <path/to/file_1> <path/to/file_2>

Comparing Files After a Specific Byte Offset

If you need to start the comparison after a certain number of bytes, use the -i option. For instance, to compare files starting after the first 100 bytes:

cmp -i 100 <path/to/file_1> <path/to/file_2>

Limiting the Number of Bytes to Compare

To restrict the comparison to a specific number of bytes, use the -n option. This is useful for performance or when you only need to check a portion of large files:

cmp -n 200 <path/to/file_1> <path/to/file_2>

Silent Comparison with Exit Status

For scripting or automated checks where you only need to know if files differ (without any output), use the --quiet flag. The exit status will indicate the result (0 for identical, 1 for different, 2 for errors):

cmp --quiet <path/to/file_1> <path/to/file_2>

Understanding Cmp Exit Codes

  • 0: Files are identical.
  • 1: Files differ.
  • 2: Trouble encountered (e.g., file not found, permission denied).

External Resources