comm (compara dos ficheros y muestra líneas comunes)
comm [OPCIÓN]... FICHERO1 FICHERO2 comprara los dos ficheros indicados y muestra (por defecto) tres columnas, la primera las líneas únicas del primer fichero, la segunda las líneas únicas del segundo fichero y la tercera columna, las líneas comunes de ambos.
Poodemos usar los parámetros -1 -2 -3 para suprimir cualquiera de las 3 columnas.
Pero veamos unos ejemplos para que quede claro:
$ cat 1
86
98
354
456
1245
3564
$ cat 2
74
98
354
556
1245
6564
$ comm 1 2
74
86
98
comm: file 1 is not in sorted order
comm: file 2 is not in sorted order
354
456
1245
3564
556
1245
6564
$ comm --nocheck-order 1 2
74
86
98
354
456
1245
3564
556
1245
6564
Como se puede ver si los ficheros aunque visualmente los ficheros están ordenados, para el el comando comm no lo están, por lo que primero debemos ordenarlos con sort:
$ sort 1 > 1.sort
$ sort 2 > 2.sort
$ cat 1.sort
1245
354
3564
456
86
98
$ cat 2.sort
1245
354
556
6564
74
98
$ comm 1.sort 2.sort
1245
354
3564
456
556
6564
74
86
98