Voici un exemple concret où hexdump peut être utile. Si vous travaillez avec des données binaires, ce sera très difficile à comprendre. Pour plus de facilité, vous pouvez rapidement transformer les données binaires en hexadécimal ou décimal.
Dans ce guide, découvrez comment utiliser la commande hexdump sous Linux.
Hexdump sous Linux
Hexdump est un programme simple mais utile écrit en langage C. C'est pourquoi les programmeurs professionnels en C peuvent trouver son utilisation facile. Cependant, même si vous n'êtes pas expérimenté dans la programmation C, vous pouvez toujours utiliser hexdump à vos fins.
Hexdump est pré-installé dans n'importe quelle distribution Linux. Dans ce guide, j'utiliserai Ubuntu à des fins de démonstration.
Utilisation du vidage hexadécimal
Pour démontrer l'utilisation de hexdump, j'ai créé un exemple de fichier texte factice.SMS.
$ chat mannequin.SMS
Nous passerons ce fichier à hexdump pour convertir son contenu en différents formats de sortie.
Affichage octal d'un octet
La commande hexdump suivante imprimera les données d'entrée au format hexadécimal. Dans la sortie, chaque ligne contient 16 octets de données d'entrée séparés par des espaces, chacun ayant 3 colonnes et rempli de zéros, en octal.
$ hexdump -b
Affichage des caractères à un octet
La commande hexdump suivante affichera les données d'entrée au format hexadécimal. Dans la sortie, chaque ligne contient 16 caractères de données d'entrée séparés par des espaces, chacun ayant 3 colonnes et rempli d'espaces.
$ hexdump -c
Hex canonique + affichage ASCII
La commande hexdump suivante affichera les données d'entrée en hexadécimal. Dans la sortie, chaque ligne contient 16 octets hexadécimaux séparés par des espaces, chacun ayant 2 colonnes. Le contenu suivant sera les mêmes octets dans %_p format entouré de « | » personnages.
$ hexdump -C
Affichage décimal sur deux octets
La commande hexdump suivante affichera les données d'entrée au format hexadécimal. Dans la sortie, chaque ligne contient 8 unités de données d'entrée de 2 octets séparées par des espaces, chacune ayant 5 colonnes et remplies de zéros, en décimal non signé.
$ hexdump -d
Affichage octal à deux octets
La commande hexdump suivante imprimera les données d'entrée au format hexadécimal. Dans la sortie, chaque ligne contient 8 2 octets de données d'entrée séparés par des espaces, chacun avec 6 colonnes et rempli de zéros, en octal.
$ hexdump -o
Affichage hexadécimal sur deux octets
La commande hexdump suivante imprimera les données d'entrée au format hexadécimal. Dans la sortie, chaque ligne contient 8 2 octets de données d'entrée séparés par des espaces, chacun avec 4 colonnes et rempli de zéros, en hexadécimal.
$ hexdump -x
Afficher toutes les entrées
Lors de l'utilisation de hexdump, il remplacera le contenu des lignes répétées par un seul astérisque. Si vous souhaitez forcer hexdump à afficher tout le contenu, utilisez le drapeau "-v".
$ chat mannequin.SMS$ hexdump -b dummy.SMS
$ hexdump -v -b
Limiter le nombre d'octets
Hexdump prend en charge l'option de décider un nombre spécifique d'octets d'un fichier à hexdump. Pour spécifier le montant, utilisez le drapeau "-s" suivi de l'octet montant.
$ hexdump -s 2 -c
Pensée finale
Les exemples présentés ici sont les façons dont vous utiliserez principalement hexdump. Pour des informations complètes sur hexdump, la page de manuel est l'une des meilleures ressources.
$ man hexdump
Hexdump est un outil puissant si vous savez quand et comment l'utiliser. Cependant, les outils ne sont pas toujours la réponse lorsqu'il s'agit de déboguer. Découvrez comment déboguer un script bash. Si vous aimez NodeJS, découvrez comment utiliser le débogueur NodeJS.
Prendre plaisir!