Réponses:
hdest synonyme de hexdump -Csur FreeBSD et sur certaines distributions Linux. hexdumpest des jours BSD ; odest de la nuit des temps . Seul odest normalisé par POSIX . La justification UNIX unique explique pourquoi a odété choisi de préférence à hdou xd.
Ces commandes font des choses très similaires: afficher une représentation textuelle d'un fichier binaire, en utilisant une notation octale, décimale ou hexadécimale. Il n'y a pas de différence fondamentale entre les deux.
Ils ont de nombreuses options pour contrôler le format de sortie, et certains formats ne peuvent être obtenus qu'avec l'une ou l'autre commande. En particulier, pour voir ce qui se trouve dans un fichier binaire, j'aime hdle format de sortie de, avec une colonne à droite montrant les caractères imprimables littéralement; odne peut pas faire ça.
$ od /bin/sh | head -n 2 # od default: octal, 2-byte words
0000000 042577 043114 000402 000001 000000 000000 000000 000000
0000020 000002 000076 000001 000000 170020 000101 000000 000000
$ od -Ax -t x1 /bin/sh | head -n 2 # od showing bytes in hexadecimal
000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
000010 02 00 3e 00 01 00 00 00 10 f0 41 00 00 00 00 00
$ hd /bin/sh | head -n 2 # hd default output: nice
00000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 |.ELF............|
00000010 02 00 3e 00 01 00 00 00 10 f0 41 00 00 00 00 00 |..>.......A.....|
042577est de 18 bits, soit 9/4 octets?
123est un nombre représenté en base 10 (décimal), alors que 0123signifie que le nombre est représenté en base 8 (octal), c'est 0123-à- dire 83. 0x123serait en base 16 (hexadécimal), soit 291. C'est sans rapport avec le odformat de sortie.
En fait, odpeut afficher à la fois les caractères hex / oct / dec et imprimables:
$ od -Ax -tx1z /bin/sh | head -n2
000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 >.ELF............<
000010 03 00 3e 00 01 00 00 00 32 4e 00 00 00 00 00 00 >..>.....2N......<
La principale différence, je suppose, n'est qu'historique. Certaines versions hdpeuvent également colorer la sortie.
odne prend pas en charge le zsuffixe dans-tx1z
hd. Néanmoins, utile, merci :)
xxdplus! : D