1 .\" You may copy, distribute and modify under the terms of the LDP General
2 .\" Public License as specified in the LICENSE file that comes with the
3 .\" gnumaniak distribution
5 .\" The author kindly requests that no comments regarding the "better"
6 .\" suitability or up-to-date notices of any info documentation alternative
7 .\" is added without contacting him first.
9 .\" (C) 2002 Ragnar Hojland Espinosa <ragnar@ragnar-hojland.com>
12 .\" man pages are NOT obsolete!
13 .\" <ragnar@ragnar-hojland.com>
14 .TH DIFF 1 "October 2002" "GNU diff Utilities 2.8.1"
16 \fBdiff\fR \- find differences between two files
19 [\fB\-abcdefhilnpqrstuwyBEHNPT\fR]
21 [\fB\-x \fIPATTERN\fR]
29 [\fB\-W \fICOLUMNS\fR]
33 [\fB\-\-changed\-group\-format=\fIfORMAT\fR]
34 [\fB\-\-context\fR[\fB=\fILINES\fR]]
35 [\fB\-\-diff\-program=\fIPROGRAM\fR]
37 [\fB\-\-exclude=\fIPATTERN\fR]
38 [\fB\-\-exclude-from=\fIFILE\fR]
39 [\fB\-\-expand\-tabs\fR]
40 [\fB\-\-forward\-ed\fR]
41 [\fB\-\-from\-file=\fIFILE\fR]
42 [\fB\-\-horizon\-lines=\fILINES\fR]
43 [\fB\-\-ifdef=\fINAME\fR]
44 [\fB\-\-ignore\-all\-space\fR]
45 [\fB\-\-ignore\-blank\-lines\fR]
46 [\fB\-\-ignore\-case\fR]
47 [\fB\-\-ignore\-file\-name\-case\fR]
48 [\fB\-\-ignore\-matching\-lines=\fIREGEXP\fR]
49 [\fB\-\-ignore\-space\-change\fR]
50 [\fB\-\-ignore\-tab\-expansion\fR]
51 [\fB\-\-inhibit\-hunk\-merge\fR]
53 [\fB\-\-label=\fILABEL\fR]
54 [\fB\-\-left\-column\fR]
55 [\fB\-\-line\-format=\fIFORMAT\fR]
58 [\fB\-\-new\-group\-format=\fIFORMAT\fR]
59 [\fB\-\-new\-line\-format=\fIFORMAT\fR]
60 [\fB\-\-no\-ignore\-file\-name\-case]
61 [\fB\-\-old\-group\-format=\fIFORMAT\fR]
62 [\fB\-\-old\-line\-format=\fIFORMAT\fR]
63 [\fB\-\-paginate\fR] [\fB\-\-rcs\fR]
65 [\fB\-\-report\-identical\-files\fR]
66 [\fB\-\-sdiff\-merge\-assist\fR]
67 [\fB\-\-show\-c\-function\fR]
68 [\fB\-\-show\-function\-line=\fIREGEXP\fR]
69 [\fB\-\-side\-by\-side\fR]
70 [\fB\-\-speed\-large\-files\fR]
71 [\fB\-\-starting\-file=\fIFILE\fR]
72 [\fB\-\-strip\-trailing\-cr\fR]
73 [\fB\-\-supress\-common\-lines\fR]
75 [\fB\-\-to\-file=\fIFILE\fR]
76 [\fB\-\-unchanged\-group\-format=\fIFORMAT\fR]
77 [\fB\-\-unchanged\-line\-format=\fIFORMAT\fR]
78 [\fB\-\-unidirectional\-new\-file]
79 [\fB\-\-unified\fR[\fB=\fILINES\fR]]
80 [\fB\-\-width=\fICOLUMNS\fR]
84 [\fB\-v\fR] [\fB\-\-help\fR] [\fB\-\-version\fR]
88 compares two files and outputs descriptions of their differences.
90 In the simplest case, the files to compare are
94 At most one of these two file names may be
98 to read the standard input for that file.
106 compares the file in directory
108 whose file name is that of
110 and vice versa. The non-directory file must not be
113 If both files are directories,
115 compares corresponding files in both directories, in
116 alphabetical order; this comparison is not recursive unless the
122 never compares the actual contents of a directory as if it were a file. The
123 file that is fully specified may not be
126 input is nameless and the notion of ``file with the same name'' does not
130 .B \-\-from\-file=\fIFILE\fR
131 option is given, the number of file names
132 is arbitrary, and \fIFILE\fR is compared to each named file. Similarly, if
134 .B \-\-to\-file=\fIFILE\fR
135 option is given, each named file is compared to \fIFILE\fR.
142 (an integer) lines of context. This option does not
143 specify an output format by itself; it has no effect unless it is
148 This option is obsolete. For proper
151 typically needs at least two lines of context.
154 Treat all files as text and compare them line-by-line, even if they
155 do not seem to be text.
157 .B \-b, \-\-ignore\-space\-change
158 Ignore changes in amount of white space. Incomplete lines are ignored.
161 Use the context output format.
164 Change the algorithm to perhaps find a smaller set of changes. This makes
166 slower (sometimes much slower).
169 Make output that is a valid
173 .B \-f, \-\-forward\-ed
174 Make output that looks vaguely like an
176 script but has changes in the order they appear in the file.
179 This option currently has no effect; it is present for Unix
180 compatibility, and has been deprecated.
182 .B \-i, \-\-ignore\-case
183 Ignore changes in case; consider upper- and lower-case letters
187 Pass the output through
192 Output RCS-format diffs; like
194 except that each command
195 specifies the number of lines affected.
197 .B \-p, \-\-show\-c\-function
198 Show which C function each change is in. This is equivalent to
199 `\-F'^[_a\-zA\-Z$]''.
202 Report only whether the files differ, not the details of the
205 .B \-r, \-\-recursive
206 When comparing directories, recursively compare any subdirectories
209 .B \-s, \-\-report\-identical\-files
210 Report when two files are the same.
212 .B \-t, \-\-expand\-tabs
213 Expand tabs to spaces in the output, to preserve the alignment of tabs
217 Use the unified output format.
219 .B \-w, \-\-ignore\-all\-space
220 Ignore white space when comparing lines. Incomplete lines are ignored.
222 .BI "\-x " PATTERN ", \-\-exclude=" PATTERN
223 When comparing directories, ignore files and subdirectories whose basenames
227 .B \-y, \-\-side\-by\-side
228 Use the side by side output format.
230 .B \-B, \-\-ignore\-blank\-lines
231 Ignore changes that just insert or delete blank lines.
233 .BI "\-C " LINES ", \-\-context[=" LINES ]
234 Use the context output format, showing
236 (an integer) lines of
239 is not given. For proper operation,
241 typically needs at least two lines of context.
243 .BI "\-D " NAME ", \-\-ifdef=" NAME
244 Make merged if-then-else format output, conditional on the preprocessor
248 .B "\-E, \-\-ignore\-tab\-expansion"
249 Ignores changes in whitespace due to tab expansion.
251 .BI "\-F " REGEXP ", \-\-show\-function\-line=" REGEXP
252 In context and unified format, for each hunk of differences, show some
253 of the last preceding line that matches
256 .B \-H, \-\-speed\-large\-files
257 Use heuristics to speed handling of large files that have numerous
258 scattered small changes. \-H short form has been deprecated.
260 .BI "\-I " REGEXP ", \-\-ignore\-matching\-lines=" REGEXP
261 Ignore changes that just insert or delete lines that match
264 .BI "\-L " LABEL ", \-\-label=" LABEL
267 instead of the file name in the context format
269 headers. \-L short form has been deprecated.
271 .B \-N, \-\-new\-file
272 In directory comparison, if a file is found in only one directory,
273 treat it as present but empty in the other directory.
275 .B \-P, \-\-unidirectional\-new\-file
276 When comparing directories, if a file appears only in the second
277 directory of the two, treat it as present but empty in the other.
278 \-P short form has been deprecated.
280 .BI "\-S " FILE ", \-\-starting\-file=" FILE
281 When comparing directories, start with the file
283 This is used for resuming an aborted comparison.
285 .B \-T, \-\-initial\-tab
286 Output a tab rather than a space before the text of a line in normal or
287 context format. This causes the alignment of tabs in the line to look
290 .BI "\-U " LINES ", \-\-unified" \fR[ = LINES \fR]
291 Use the unified output format, showing
293 (an integer) lines of context, or three if
295 is not given. For proper operation,
297 typically needs at least two lines of context.
299 .BI "\-W " COLUMNS ", \-\-width=" COLUMNS
300 Use an output width of
302 in side by side format.
304 .BI \-X FILE ", \-\-exclude\-from=" FILE
305 When comparing directories, ignore files and subdirectories whose basenames
306 match any pattern contained in
310 Read and write data in binary mode (no effect in Linux or other POSIX hosts).
312 .BI \-\-changed\-group\-format= FORMAT
315 to output a line group containing differing lines from
316 both files in if-then-else format.
318 .B \-\-diff\-program= \fIPROGRAM
319 Use an external \fIPROGRAM\fR, compatible with \fBdiff\fR, to compare files.
321 .BI \-\-from\-file= FILE
322 Compare \fIFILE\fR with each operand; \fIFILE\fR may be a directory.
324 .BI \-\-horizon\-lines= LINES
325 Do not discard the last
327 lines of the common prefix
330 lines of the common suffix.
332 .B \-\-ignore\-file\-name\-case
333 Ignore case in filenames when comparing files, so that ``foo'' and ``Foo''
334 are considered the same and therefore compared with each other.
336 .B \-\-inhibit\-hunk\-merge
337 Do not shift hunk boundaries to merge adjacent hunks.
340 Print only the left column of two common lines in side by side format.
342 .BI \-\-line\-format= FORMAT
345 to output all input lines in in-then-else format.
347 .BI \-\-new\-group\-format= FORMAT
350 to output a group of lines taken from just the second
351 file in if-then-else format.
353 .BI \-\-new\-line\-format= FORMAT
356 to output a line taken from just the second file in
359 .B \-\-no\-ignore\-file\-name\-case
360 Case in filenames is taken into account comparing files, so that names ``foo'' and
361 ``Foo'' are not considered the same. See \fB\-\-ignore\-file\-name\-case\fR.
363 .BI \-\-old\-group\-format= FORMAT
366 to output a group of lines taken from just the first
367 file in if-then-else format.
369 .BI \-\-old\-line\-format= FORMAT
372 to output a line taken from just the first file in
375 .B \-\-sdiff\-merge\-assist
376 Print extra information to help
379 uses this option when it runs
381 This option is not intended for users to use directly.
383 .B \-\-strip\-trailing\-cr
384 Strips trailing CRs. Useful when processing output from systems that use
385 CRLF as end of line markers.
387 .B \-\-suppress\-common\-lines
388 Do not print common lines in side by side format.
390 .BI \-\-unchanged\-group\-format= FORMAT
393 to output a group of common lines taken from both files
394 in if-then-else format.
396 .BI \-\-unchanged\-line\-format= FORMAT
399 to output a line common to both files in if-then-else
403 Print a usage message on standard output and exit successfully.
406 Output the version number of
410 The context output format starts with a two-line header, which looks
414 *** FROMFILE FROMFILE-MODIFICATION-TIME
415 --- TOFILE TOFILE-MODIFICATION-TIME
418 You can change the header's content with the
420 Next come one or more hunks of differences; each hunk shows
421 one area where the files differ. Context format hunks look like this:
425 *** FROMFILE-LINE-RANGE ****
428 --- TOFILE-LINE-RANGE ----
433 The lines of context around the lines that differ start with two
434 space characters. The lines that differ between the two files start
435 with one of the following indicator characters, followed by a space
439 A line that is part of a group of one or more lines that changed
440 between the two files. There is a corresponding group of lines
443 in the part of this hunk for the other file.
446 An "inserted" line in the second file that corresponds to nothing in the
450 A "deleted" line in the first file that corresponds to nothing in the
453 If all of the changes in a hunk are insertions, the lines of
455 are omitted. If all of the changes are deletions, the lines
460 The unified output format starts with a two-line header, which looks
464 --- FROMFILE FROMFILE-MODIFICATION-TIME
465 +++ TOFILE TOFILE-MODIFICATION-TIME
468 You can change the header's content with the
470 Next come one or more hunks of differences; each hunk shows
471 one area where the files differ. Unified format hunks look like this:
474 @@ FROMFILE-RANGE TOFILE-RANGE @@
475 LINE-FROM-EITHER-FILE
476 LINE-FROM-EITHER-FILE...
479 The lines lines common to both files start with 1 space character. The lines
480 that differ start with one of the following indicator characters:
483 A line was added here to the first file.
486 A line was removed here from the first file.
487 .SS Side by side format
488 The files are listed in two columns with a gutter between them. The
489 gutter contains one of the following markers:
492 The corresponding lines are in common. That is, either the lines
493 are identical, or the difference is ignored because of one of the
498 The corresponding lines differ, and they are either both complete
502 The files differ and only the first file contains the line.
505 The files differ and only the second file contains the line.
508 Only the first file contains the line, but the difference is ignored.
511 Only the second file contains the line, but the difference is ignored.
514 The corresponding lines differ, and only the first line is incomplete.
517 The corresponding lines differ, and only the second line is incomplete.
518 Normally, an output line is incomplete if and only if the lines that
519 it contains are incomplete. However, when an output line represents two
520 differing lines, one might be incomplete while the other is not. In this
521 case, the output line is complete, but its the gutter is marked
523 if the first line is incomplete,
525 if the second line is.
527 Side by side format is sometimes easiest to read, but it has
528 limitations. It generates much wider output than usual, and truncates
529 lines that are too long to fit. Also, it relies on lining up output
530 more heavily than usual, so its output looks particularly bad if you
531 use varying width fonts, nonstandard tab stops, or nonprinting
535 command to interactively merge side by side differences.
537 Consists of one or more hunks of differences. The changes closest to the
538 ends of the files come first so that commands that change the number of
539 lines do not affect how
541 interprets line numbers in succeeding commands.
543 format hunks look like this:
554 uses a single period on a line to indicate the end of input,
556 protects lines of changes that contain a single period on a line by writing
557 two periods instead, then writing a subsequent ed' command to change the two
558 periods into one. The
560 format cannot represent an incomplete line, so if the second file ends
561 in a changed incomplete line,
563 reports an error and then pretends that a newline was appended.
565 There are three types of change commands. Each consists of a line
566 number or comma-separated range of lines in the first file and a single
567 character indicating the kind of change to make. All line numbers are
568 the original line numbers in the file. The types of change commands
572 Add text from the second file after line \fIL\fP in the first file. For
573 example, `8a' means to add the following lines after line 8 of file 1.
576 Replace the lines in range \fIR\fP in the first file with the following
577 lines. Like a combined add and delete, but more compact. For
578 example, `5,7c' means change lines 5-7 of file 1 to read as the
582 Delete the lines in range \fIR\fP from the first file. For example,
583 `5,7d' means delete lines 5-7 of file 1.
586 can produce output that is like an
588 script, but with hunks in forward (front to back) order. The format of the
589 commands is also changed slightly: command characters precede the lines they
590 modify, spaces separate line numbers in ranges, and no attempt is made
591 to disambiguate hunk lines consisting of a single period. Like
595 format cannot represent incomplete lines.
599 format is not very useful, because neither
603 can apply diffs in this format. It exists mainly for compatibility with
607 The RCS output format is designed specifically for use by the
608 Revision Control System, which is a set of free programs used for
609 organizing different versions and systems of files. It is like the forward
611 format, but it can represent arbitrary changes to the contents of a file
612 because it avoids the problems with lines consisting of a single period and
613 with incomplete lines. Instead of ending text sections with a line
614 consisting of a single period, each command specifies the number of
615 lines it affects; a combination of the
622 Also, if the second file ends in a changed incomplete line, then the output
623 also ends in an incomplete line.
628 to merge two files of C source code. The output in this format contains all
629 the lines of both files. Lines common to both files are output just once;
630 the differing parts are separated by the C preprocessor directives
635 ,BR #else ", and " #endif .
636 When compiling the output, you select which version to use by either
637 defining or leaving undefined the macro
640 For example, if you change an instance of `wait (&s)' to `waitpid
641 (-1, &s, 0)' and then merge the old and new files with the
642 `\fB--ifdef=\fIHAVE_WAITPID\fR' option, then the affected part of your code
643 might look like this:
648 if ((w = wait (&s)) < 0 && errno != EINTR)
649 #else /* HAVE_WAITPID */
650 if ((w = waitpid (-1, &s, 0)) < 0 && errno != EINTR)
651 #endif /* HAVE_WAITPID */
653 } while (w != child);
656 Line group formats let you specify formats suitable for many
657 applications that allow if-then-else input, including programming
658 languages and text formatting languages. A line group format specifies
659 the output format for a contiguous group of similar lines.
661 For example, the following command compares the TeX files `old' and
662 `new', and outputs a merged file in which old regions are surrounded by
663 `\ebegin{em}'-`\eend{em}' lines, and new regions are surrounded by
664 `\ebegin{bf}'-`\eend{bf}' lines.
668 --old-group-format='\ebegin{em}
671 --new-group-format='\ebegin{bf}
677 The following command is equivalent to the above example, but it is a
678 little more verbose, because it spells out the default line group formats.
682 --old-group-format='\ebegin{em}
685 --new-group-format='\ebegin{bf}
688 --unchanged-group-format='%=' \e
689 --changed-group-format='\ebegin{em}
697 Here is a more advanced example, which outputs a diff listing with headers
698 containing line numbers in a "plain English" style.
702 --unchanged-group-format='' \e
703 --old-group-format='-------- %dn line%(n=1?:s) deleted at %df:
705 --new-group-format='-------- %dN line%(N=1?:s) added after %de:
707 --changed-group-format='-------- %dn line%(n=1?:s) changed at %df:
713 To specify a line group format, use \fBdiff\fR with one of the options listed
714 below. You can specify up to four line group formats, one for each kind of
715 line group. You should quote \fIFORMAT\fR, because it typically contains
716 shell metacharacters.
718 .BI \-\-old-group\-format= FORMAT
719 These line groups are hunks containing only lines from the first file. The
720 default old group format is the same as the changed group format if it is
721 specified; otherwise it is a format that outputs the line group as-is.
723 .BI \-\-new-group\-format= FORMAT
724 These line groups are hunks containing only lines
725 from the second file. The default new group format is same as the the changed
726 group format if it is specified; otherwise it is a format that outputs the line
729 .BI \-\-changed\-group\-format= FORMAT
730 These line groups are hunks containing lines from both files. The default
731 changed group format is the concatenation of the old and new group formats.
733 .BI \-\-unchanged\-group\-format= FORMAT
734 These line groups contain lines common to both files. The default unchanged
735 group format is a format that outputs the line group as-is.
736 .SS Group conversions
739 stands for the lines from the first file, including the trailing
740 newline. Each line is formatted according to the old line format
743 stands for the lines from the second file, including the trailing
744 newline. Each line is formatted according to the new line format.
747 stands for the lines common to both files, including the trailing
748 newline. Each line is formatted according to the unchanged line format.
756 is a single character, stands for
758 may not be a backslash or an apostrophe. For example, `%c':'' stands for a
759 colon, even inside the then-part of an if-then-else format, which a colon
760 would normally terminate.
765 is a string of 1, 2, or 3 octal digits, stands for the
766 character with octal code
768 For example, %c'\e0'' stands for a null character.
770 .BI ( A = B ? T : E )
782 are each either a decimal constant or a single letter interpreted as above.
783 This format spec is equivalent to
784 .IR T " if " A "'s value equals " B "'s; otherwise it is equivalent to " E .
786 For example, `%(N=0?no:%dN) line%(N=1?:s)' is equivalent to no
787 lines' if N (the number of lines in the group in the the new file)
788 is 0, to 1 line' if N is 1, and to %dN lines' otherwise.
793 conversion specification and
795 is one of the following letters, stands for
796 .IR N "'s value formatted with " F .
800 The line number of the line just before the group in the old file.
803 The line number of the first line in the group in the old file; equals E + 1.
806 The line number of the last line in the group in the old file.
809 The line number of the line just after the group in the old file; equals L + 1.
812 The number of lines in the group in the old file; equals L - F + 1.
815 Likewise, for lines in the new file.
820 conversion specification can be
821 .BR %d ", " %o ", " %x ", or " %X ,
822 specifying decimal, octal, lower case hexadecimal, or upper
823 case hexadecimal output respectively. After the
825 the following options can appear in sequence: a
827 specifying left-justification; an integer specifying the minimum field width;
828 and a period followed by an optional integer specifying the
829 minimum number of digits. For example, `%5dN' prints the number
830 of new lines in the group in a field of width 5 characters, using the
833 .SS Line group format
834 Line formats control how each line taken from an input file is
835 output as part of a line group in if-then-else format.
837 For example, the following command outputs text with a one-column
838 change indicator to the left of the text. The first column of output
839 is `-' for deleted lines, `|' for added lines, and a space for
840 unchanged lines. The formats contain newline characters where newlines
841 are desired on output.
844 --old-line-format='-%l
846 --new-line-format='|%l
848 --unchanged-line-format=' %l
852 To specify a line format, use one of the following options. You
853 should quote \fIFORMAT\fR, since it often contains shell metacharacters.
855 .BI \-\-old-line-format= FORMAT
856 Formats lines just from the first file.
858 .BI \-\-new\-line\-format= FORMAT
859 Formats lines just from the second file.
861 .BI \-\-unchanged\-line\-format= FORMAT
862 Formats lines common to both files.
864 .BI \-\-line\-format= FORMAT
865 Formats all lines; in effect, it sets all three above options simultaneously.
867 In a line format, ordinary characters represent themselves; conversion
868 specifications start with
873 stands for the the contents of the line, not counting its trailing
874 newline (if any). This format ignores whether the line is incomplete.
877 stands for the the contents of the line, including its trailing newline (if
878 any). If a line is incomplete, this format preserves its incompleteness.
886 is a single character, stands for
888 may not be a backslash or an apostrophe. For example, `%c':'' stands for a
894 is a string of 1, 2, or 3 octal digits, stands for the
895 character with octal code
897 For example, %c'\e0'' stands for a null character.
903 .B printf conversion specification, stands for the line number formatted with
905 For example, `%.5dn' prints the line number using the format `%.5d'. For
906 more on printf conversion specifications, read the Group Format subsection
909 The default line format is
911 followed by a newline character. If the input contains tab characters and
912 it is important that they line up on output, you should ensure that `%l' or
913 %L' in a line format is just after a tab stop (e.g. by preceding %l' or %L'
914 with a tab character), or you should use the \fB\-t\fR option.
916 Taken together, the line and line group formats let you specify many
917 different formats. For example, the following command uses a format
918 similar to diff's normal format. You can tailor this command to get
919 fine control over diff's output.
923 --old-line-format='< %l
925 --new-line-format='> %l
927 --old-group-format='%df%(f=l?:,%dl)d%dE
929 --new-group-format='%dea%dF%(F=L?:,%dL)
931 --changed-group-format='%df%(f=l?:,%dl)c%dF%(F=L?:,%dL)
934 --unchanged-group-format='' \e
937 .SH COMPARING DIRECTORIES
938 When both file name arguments to \fBdiff\fR are directories, it compares
939 each file that is contained in both directories, examining file names in
940 alphabetical order. Normally it is silent about pairs of files that contain
941 no differences, but if you use the \fB\-s\fR option, it reports pairs of
942 identical files. Normally \fBdiff\fR reports subdirectories common to both
943 directories without comparing subdirectories' files, but if you use the
944 \fB\-r\fR option, it compares every corresponding pair of files in the
945 directory trees, as many levels deep as they go.
947 For file names that are in only one of the directories, \fBdiff\fR
948 normally does not show the contents of the file that exists; it reports
949 only that the file exists in that directory and not in the other. You
950 can make \fBdiff\fR act as though the file existed but was empty in the
951 other directory, so that it outputs the entire contents of the file that
952 actually exists. (It is output as either an insertion or a deletion,
953 depending on whether it is in the first or the second directory given.)
954 To do this, use the \fB\-N\fR option.
956 If the older directory contains one or more large files that are not
957 in the newer directory, you can make the patch smaller by using the
963 except that it only inserts the contents of files that appear in the second
964 directory but not the first (that is, files that were added). At the top of
965 the patch, write instructions for the user applying the patch to remove the
966 files that were deleted before applying the patch.
968 To ignore some files while comparing directories, use the
969 \fB\-x \fIPATTERN\fR option. Unlike in the shell, a period at the start of
970 the base of a file name matches a wildcard at the start of a pattern. You
971 should enclose \fIPATTERN\fR in quotes so that the shell does not expand it.
972 For example, the option `\-x '*.[ao]'' ignores any file whose name ends with
973 `.a' or `.o'. This option accumulates if you specify it more than once. For
974 example, using the options `-x 'RCS' -x '*,v'' ignores any file or
975 subdirectory whose base name is `RCS' or ends with `,v'.
978 exits with one of the following values:
981 No differences were found.
984 Some difference was found.
989 cmp(1), comm(1), diff3(1), ed(1), patch(1), pr(1), sdiff(1).
991 Report bugs to bug-gnu-utils@gnu.org.
992 Page updated by Ragnar Hojland Espinosa <ragnar@ragnar-hojland.com>