join -1 1 -2 1 -t: passwd shadow
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh:*:13199:0:99999:7:::
www-data:x:33:33:www-data:/var/www:/bin/sh:*:13199:0:99999:7:::
Si on rajoute -v1 et/ou -v2, on voit alors les champs qui ne sont QUE dans le fichier demandé. Ici, il y a un -v1 et hal n'est disponible que dans passwd
hal:x:108:108:Hardware abstraction layer,,,:/var/run/hal:/bin/false
Les différences peuvent alors être traitées de manière plus simple que par diff.

Attention : il faut que les fichiers soient triés sur le champ de recherche. On peut utiliser sort -k1 -t: passwd > passwd.1

Issu de http://myrte.u-strasbg.fr/Pense_bete_Linux.txt