Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ comm(1) — Digital UNIX 3.2c

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

cmp(1)

diff(1)

sdiff(1)

sort(1)

uniq(1)

comm(1)  —  Commands

NAME

comm − Compares two sorted files. 

SYNOPSIS

comm [−123] file1 file2

FLAGS

−1Suppresses output of the first column (lines in file1 only). 

−2Suppresses output of the second column (lines in file2 only). 

−3Suppresses output of the third column (lines common to file1 and file2). 

The command comm −123 produces no output. 

DESCRIPTION

The comm command reads file1 and file2 and writes three columns to standard output, showing which lines are common to the files and which are unique to each. 

The leftmost column of standard output includes lines that are in file1 only.  The middle column includes lines that are in file2 only.  The rightmost column includes lines that are in both file1 and file2. 

If you specify a hyphen (−) in place of one of the filenames, comm reads standard input. 

Generally, file1 and file2 are sorted according to the collating sequence specified by the LC_COLLATE environment variable.  (See sort(1).) 

EXAMPLES

In the following examples, file1 contains the following sorted list of North American cities:

Anaheim
Baltimore
Boston
Chicago
Cleveland
Dallas
Detroit
Kansas City
Milwaukee
Minneapolis
New York
Oakland
Seattle
Toronto

The second file, file2, contains this sorted list:

Atlanta
Chicago
Cincinnati
Houston
Los Angeles
Montreal
New York
Philadelphia
Pittsburgh
San Diego
San Francisco
St. Louis

To display the lines unique to each file and common to the two files, enter:

comm file1 file2

This command results in the following output:

Anaheim
Atlanta
Baltimore
Boston
Chicago
Cincinnati
Cleveland
Dallas
Detroit
Houston
Kansas City
Los Angeles
Milwaukee
Minneapolis
Montreal
New York
Oakland
Philadelphia
Pittsburgh
San Diego
San Francisco
Seattle
St. Louis
Toronto

The leftmost column contains lines in file1 only, the middle column contains lines in file2 only, and the rightmost column contains lines common to both files. 

To display any one or two of the three output columns, include the appropriate flags to suppress the columns you do not want.  For example, the following command displays columns 1 and 2 only:

comm −3 file1 file2

Anaheim
Atlanta
Baltimore
Boston
Cincinnati
Cleveland
Dallas
Detroit
Houston
Kansas City
Los Angeles
Milwaukee
Minneapolis
Montreal
Oakland
Philadelphia
Pittsburgh
San Diego
San Francisco
Seattle
St. Louis
Toronto

The following command displays output from only the second column:

comm −13 file1 file2

Atlanta
Cincinnati
Houston
Los Angeles
Montreal
Philadelphia
Pittsburgh
San Diego
San Francisco
St. Louis

The following command displays output from only the third column:

comm −12 file1 file2

Chicago
New York

EXIT VALUES

0Successful completion

>0Error occurred

RELATED INFORMATION

Commands:  cmp(1), diff(1), sdiff(1), sort(1), uniq(1). 

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