DIFF(1)DIFF(1)NAMEdiff - differential file comparator
SYNOPSISdiff [ -efbwr ] file1 ... file2
DESCRIPTION
Diff tells what lines must be changed in two files to bring them into
agreement. If one file is a directory, then a file in that directory
with basename the same as that of the other file is used. If both
files are directories, similarly named files in the two directories are
compared by the method of diff for text files and cmp(1) otherwise. If
more than two file names are given, then each argument is compared to
the last argument as above. The -r option causes diff to process simi‐
larly named subdirectories recursively. The normal output contains
lines of these forms:
n1 a n3,n4
n1,n2 d n3
n1,n2 c n3,n4
These lines resemble Plan 9 or Unix ed commands to convert file1 into
file2. The numbers after the letters pertain to file2. In fact, by
exchanging `a' for `d' and reading backward one may ascertain equally
how to convert file2 into file1. As in ed, identical pairs where n1 =
n2 or n3 = n4 are abbreviated as a single number.
Following each of these lines come all the lines that are affected in
the first file flagged by `<', then all the lines that are affected in
the second file flagged by `>'.
The -b option causes trailing blanks (spaces and tabs) to be ignored
and other strings of blanks to compare equal. The -w option causes all
white-space to be removed from input lines before applying the differ‐
ence algorithm.
The -e option produces a script of a, c and d commands for the Plan 9
or Unix editor ed, which will recreate file2 from file1. The -f option
produces a similar script, not useful with ed, in the opposite order.
It may, however, be useful as input to a stream-oriented post-proces‐
sor.
Except in rare circumstances, diff finds a smallest sufficient set of
file differences.
FILES
/tmp/diff[12]
SOURCE
/appl/cmd/diff.b
DIAGNOSTICS
Exit status is the empty string for no differences, for some, and for
trouble.
SEE ALSOcmp(1)BUGS
Editing scripts produced under the -e or -f option are naive about cre‐
ating lines consisting of a single `.'.
When running diff on directories, the notion of what is a text file is
open to debate.
Nothing directly interprets the ed scripts within the Inferno environ‐
ment.
DIFF(1)