Installé avec le paquet diffutils
Voir aussi : zcmp, bzcmp, xzcmp, diff, zdiff, bzdiff, xzdiff, wdiff, sdiff, mgdiff, diff3, patch, meld, kdiff3 et kompare
Afficher la version de la commande cmp
cmp --version
ou
apt-cache policy diffutils
Fichiers utilisés pour les tests
file1.txt
Lorem ipsum dolor sit amet.
file2.txt
Lorem ipsum dolor sit amet.
file3.txt
Lorem ipsum Dolor sic amet.
Comparer octet par octet deux fichiers
cmp filename1 filename2
Chaque octet sera comparé jusqu’à trouver le premier octet qui diffère. Il est alors signalé et permet de conclure que les deux fichiers sont différents.
ex :
# cmp file1.txt file3.txt
file1.txt file3.txt sont différents: octet 13, ligne 1
cmp -b filename1 filename2
Affichera en plus la valeur octale de cet octet pour les deux fichiers et la correspondance dans le tableau ASCII.
ex :
# cmp -b file1.txt file3.txt
file1.txt file3.txt diffèrent: octet 13, ligne 1 est 144 d 104 D
Mode verbeux
cmp -l filename1 filename2
Affichera tous les octets qui différent entre les 2 fichiers, et la valeur octale correspondante à ces octets pour chacun des fichiers.
ex :
# cmp -l file1.txt file3.txt
13 144 104
21 164 143
Les octets 13 et 21 diffèrent entre file1.txt et file3.txt.
L’octet 13 a pour valeur octale 144 (soit la lettre d) sur file1.txt et 104 (soit la lettre D) sur file3.txt.
L’octet 21 a pour valeur octale 164 (soit la lettre t) sur file1.txt et 143 (soit la lettre c) sur file3.txt
cmp -bl filename1 filename2
Affichera, en plus de la valeur octale de chaque octet, la correspondance du tableau ASCII.
ex :
# cmp -bl file1.txt file3.txt
13 144 d 104 D
21 164 t 143 c
Pour plus d’informations sur les valeurs octales des caractères ASCII : voir la commande man ascii
Mode silencieux
cmp -s filename1 filename2
Aucun retour ne sera affiché.
Retournera 0 si les fichiers sont identiques.
Retournera 1 si les fichiers diffèrent.
ex :
# cmp -s file1.txt file2.txt # echo $? 0 # cmp -s file1.txt file3.txt # echo $? 1