266 votes

Comment comparer des fichiers binaires pour vérifier s'ils sont identiques ?

Quel est le moyen le plus simple (en utilisant un outil graphique ou une ligne de commande sur Ubuntu Linux) de savoir si deux fichiers binaires sont identiques ou non (à l'exception des horodatages) ? Je n'ai pas besoin d'extraire la différence. J'ai juste besoin de savoir s'ils sont identiques ou non.

272voto

Joe Points 17829

La norme unix diff montrera si les fichiers sont identiques ou non :

[me@host ~]$ diff 1.bin 2.bin
Binary files 1.bin and 2.bin differ

Si la commande ne produit aucun résultat, cela signifie que les fichiers ne présentent aucune différence.

148voto

shao.lo Points 97

J'ai trouvé Diffusion binaire visuelle était ce que je cherchais, disponible sur :

  • Ubuntu :

    sudo apt install vbindiff
  • Arch Linux :

    sudo pacman -S vbindiff
  • Mac OS X via MacPorts :

    port install vbindiff
  • Mac OS X via Homebrew :

    brew install vbindiff

142voto

bobjandal Points 333

Utilisez cmp commande. Soit elle s'arrêtera proprement si elles sont binaires et égales, soit elle imprimera l'endroit où se produit la première différence et s'arrêtera.

20voto

simotek Points 657

J'ai fini par utiliser hexdump pour convertir les fichiers binaires en leur représentation hexagonale, puis je les ai ouverts dans meld / kompare / tout autre outil de comparaison. Contrairement à vous, je cherchais les différences entre les fichiers.

hexdump tmp/Circle_24.png > tmp/hex1.txt
hexdump /tmp/Circle_24.png > tmp/hex2.txt

meld tmp/hex1.txt tmp/hex2.txt

19voto

Scott Presnell Points 1490

Utilisez sha1 pour générer la somme de contrôle :

sha1 [FILENAME1]
sha1 [FILENAME2]

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X