Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ diff(1) — DG/UX 4.30

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

cmp(1)

berk_diff(1)

berk_diff3(1)

comm(1)

diff3(1)

diffmk(1)

ed(1)



     diff(1)                    DG/UX 4.30                     diff(1)



     NAME
          diff - differential file comparator

     SYNOPSIS
          diff [ -efbh ] file1 file2

     DESCRIPTION
          Diff tells what lines must be changed in two files to bring
          them into agreement.  If file1 (file2) is -, the standard
          input is used.  If file1 (file2) is a directory, then a file
          in that directory with the name file2 (file1) is used.  The
          normal output consists of a series of commands; each command
          is followed by the lines it affects. The commands tell how
          to turn file1 into file2.  Just as in ed, arguments to the
          commands are numbers; either a single number for num or a
          pair of numbers separated by a comma (no spaces) for range
          (see the commands, below). A range that refers to a single
          line appears as a single number.  The lines from file1 are
          prepended with <; from file2, with >.

          The commands resemble ed commands:

          numarange         Append the range of lines from file2 after
                            line num in file1.

          rangednum         Delete the range of lines in file1.  Num
                            points to the line in file2 last compared
                            before the d command was triggered.

          range1crange2     Change. Replace range1 in file1 with
                            range2 in file2.  In the output, both
                            ranges of lines appear after this command,
                            one range at a time, separated by a short
                            line ().

          The commands tell how to convert file1 into file2; however,
          by exchanging a for d and reading backward, you can tell how
          to convert file2 into file1.

          Diff may appear to refer to lines that aren't there,
          especially lines at the end of the file. It believes that
          trailing blank lines are as significant as text.

          Options are:

          -b      Ignores trailing blanks (spaces and tabs) and
                  compares other strings of blanks as equal.

          -e      Produces a script of a, c, and d commands for the
                  editor ed.  If run through ed, they will turn file1
                  into file2 (see "EXAMPLES").




     Licensed material--property of copyright holder(s)         Page 1





     diff(1)                    DG/UX 4.30                     diff(1)



          -f      Produces a script in the same format that -e does,
                  but in reverse order. The script would not be
                  meaningful to ed, however.

          -h      Causes diff to do a fast, half-hearted job. Ranges
                  of nonidentical text are resolved with giant change
                  commands rather than a series of more precise
                  append, change, and delete commands.  It works only
                  when changed stretches are short and well separated,
                  but does work on files of unlimited length.  Options
                  -e and -f cannot be used with -h.

          Except in rare circumstances, diff finds a smallest
          sufficient set of file differences.


     EXAMPLES
          $ diff file1 file2

          9a10
          >file2

          The above example shows that the only difference between
          file1 and file2 is line 10 of file2.  The output from the
          diff command states that to make file1 the same as file2,
          line 10 from file2 should be appended to file1 after line 9.
          The line that should be appended is shown on the second
          output line.  The string "file2" should be inserted after
          line 9 of file1 to make file1 and file2 the same.

          $  diff -e file1 file2 > edscriptfile
          $ ( cat ed_script_file ; echo '1, $p' ) | ed - file1.new

          $

          The above example compares the two files, produces an ed
          script to turn file1 into file2, and displays the results on
          the screen.  NOTE:  The only commands that will be part of
          the script file are a, c, and d commands.

     FILES
          possible temporary file /tmp/d?????
          /usr/lib/diffh for -h

     SEE ALSO
          cmp(1), berk_diff(1), berk_diff3(1), comm(1), diff3(1),
          diffmk(1), ed(1).

     DIAGNOSTICS
          Exit status is 0 for no differences, 1 for some differences,
          2 for trouble.




     Licensed material--property of copyright holder(s)         Page 2





     diff(1)                    DG/UX 4.30                     diff(1)



     BUGS
          Editing scripts produced under the -e or -f option are naive
          about creating lines consisting of a single period (.).

     WARNINGS
          Missing newline at end of file X
               indicates that the last line of file X did not have a
               new-line.  If the lines are different, they will be
               flagged and output, although the output will seem to
               indicate they are the same.













































     Licensed material--property of copyright holder(s)         Page 3



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026