Linux Command Library


compare two sorted files line by line

- Produce three tab-separated columns: lines only in first file, lines only in second file and common lines:
comm [file1] [file2]

- Print only lines common to both files:
comm -12 [file1] [file2]

- Print only lines common to both files, reading one file from stdin:
cat [file1] | comm -12 - [file2]

- Get lines only found in first file, saving the result to a third file:
comm -23 [file1] [file2] > [file1_only]

- Print lines only found in second file, when the files aren't sorted:
comm -13 <(sort [file1]) <(sort [file2])

comm [,OPTION/]... ,FILE1 FILE2/

Compare sorted files FILE1 and FILE2 line by line.

When FILE1 or FILE2 (not both) is -, read standard input.

With no options, produce three-column output. Column one contains lines unique to FILE1, column two contains lines unique to FILE2, and column three contains lines common to both files.

suppress column 1 (lines unique to FILE1)
suppress column 2 (lines unique to FILE2)
suppress column 3 (lines that appear in both files)
check that the input is correctly sorted, even if all input lines are pairable
do not check that the input is correctly sorted
separate columns with STR
output a summary
-z, --zero-terminated
line delimiter is NUL, not newline
display this help and exit
output version information and exit

Note, comparisons honor the rules specified by 'LC_COLLATE'.

comm -12 file1 file2
Print only lines present in both file1 and file2.
comm -3 file1 file2
Print lines in file1 not in file2, and vice versa.

Written by Richard M. Stallman and David MacKenzie.

GNU coreutils online help: <> Report comm translation bugs to <>

Copyright © 2016 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.

join(1), uniq(1)

Full documentation at: <> or available locally via: info '(coreutils) comm invocation'

play store download app store download
Sonnenallee 29, 12047 Berlin, Germany

Privacy policy
Successfully copied