Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

cmp(1)

comm(1)

diff(1)

dffmk(1)

join(1)

sccsdiff(1)

uniq(1)

diff3(1)

Name

diff3 − 3-way differential file comparison

Syntax

diff3 [−ex3] file1 file2 file3

Description

The diff3 command compares three versions of a file, and publishes the ranges of text that disagree, flagged with the following codes:

==== all three files differ

====1 file1 is different

====2 file2 is different

====3 file3 is different

The type of change needed to convert a given range of a given file to some other is indicated in one of these ways:

f : n1 a Text is to be appended after line number n1 in file f, where f = 1, 2, or 3. 

f : n1 , n2 c Text is to be changed in the range line n1 to line n2. If n1 = n2, the range may be abbreviated to n1.

The original contents of the range follows immediately after a c indication.  When the contents of two files are identical, the contents of the lower-numbered file is suppressed. 

Options

−3Produces an ed editor script containing the changes between file1 and file2 that are to be incorporated into file3.

−eProduces an ed editor script containing the changes between file2 and file3 that are to be incorporated into file1.

−xProduces an ed editor script containing the changes among all three files.

Examples

Under the −e option, diff3 publishes a script for the editor ed that incorporates into file1 all changes between file2 and file3 − that is, the changes that would normally be flagged ==== and ====3.  Option −x (−3) produces a script to incorporate only changes flagged ==== (====3).  The following command applies the resulting script to ‘file1’:

(cat script; echo ´1,$p´) │ ed − file1

Restrictions

Text lines that consist of a single ‘.’ defeat −e. 

Files

/tmp/d3????? 
/usr/lib/diff3

See Also

cmp(1), comm(1), diff(1), dffmk(1), join(1), sccsdiff(1), uniq(1)

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