Manpages

Manpage of CMP

CMP

Section: User Commands (1)
Updated: 1998 September 23
Index
Return to Main Contents
 

NAME

cmp (GNU diffutils) - compare two files or byte ranges  

SYNOPSIS

cmp [-clsv] [-i NUM] [--help] [--print-chars] [--ignore-initial=NUM] [--verbose] [--quiet] [--silent] [--version] -I FILE1 [FILE2 [RANGE1 [RANGE2]]]  

DESCRIPTION

The cmp utility compares two files of any type and writes the results to the standard output. By default, cmp is silent if the files are the same; if they differ, the byte and line number at which the first difference occurred is reported.

In the output, bytes and lines are numbered beginning with one; however, range inputs are zero-based; see below for details. A filename of - represents standard input.

The following options are available:

-c, --print-chars
Output the differing bytes as characters, rather than as octal numbers. Non-printable characters will be shown in form.
-i NUM, --ignore-initial=NUM
Ignore NUM initial characters from each file. This is a synonym for specifying NUM NUM as the two RANGE arguments.
-l, --verbose
Print the byte number (decimal) and the differing byte values (octal) for each difference.
-s, --quiet, --silent
Print nothing for differing files; return exit status only.
-v, --version
Print the diffutils version number.
 

BYTE RANGES

The two optional arguments RANGE1 and RANGE2 represent byte ranges to compare within the files. Each range can be expressed in several ways:

M+N
Skip M bytes at the beginning of the input, then compare a maximum of N bytes.
M-N, M,N
Skip M bytes at the beginning of the input, and read between bytes M and N, which are both zero-based.

In either case, both M and N are optional and default to beginning and end of file, respectively. In addition, they can be expressed in decimal, octal (0NNN) or hexadecimal (0xNNN) form.  

NOTES

The zero-based range numbers may seem inconsistent with cmp output, which is one-based; this is for compatibility with some versions of cmp which allow "skip N bytes" parameters after the filenames; in this context, the N is zero-based.  

DIAGNOSTICS

The cmp utility exits with one of the following values:

0
The files or byte ranges are identical.
1
The files or byte ranges are different; this includes the case where one file or range is identical to the first part of the other. In the latter case, if -s has not been specified, cmp writes to standard output that EOF was reached in the shorter file.
>1
An error occurred.
 

SEE ALSO

diff(1), diff3(1)  

STANDARDS

The cmp utility is expected to be POSIX 1003.2-compliant.


 

Index

NAME
SYNOPSIS
DESCRIPTION
BYTE RANGES
NOTES
DIAGNOSTICS
SEE ALSO
STANDARDS

This document was created by man2html, using the manual pages.
Time: 21:33:45 GMT, July 06, 2025