Sur ma machine, j'obtiens la sortie suivante lorsque j'exécute ces commands:
$ echo foos > myfile $ hexdump myfile 6f66 736f 000a
La sortie de hexdump est little-endian. Cela signifie-t-il que ma machine est peu endiablée ou hexdump utilise-t-il toujours le format little-endian?
Oui, l'utilitaire BSD hexdump
traditionnel utilise toujours l'endianness de la plate-forme. Utilisez hexdump -C
(ou od -t x1
) pour get une sortie byte byte plus sensible.
De la page de manuel:
-x Two-byte hexadecimal display. Display the input offset in hexa‐ decimal, followed by eight, space separated, four column, zero- filled, two-byte quantities of input data, in hexadecimal, per line.
…
If no format ssortingngs are specified, the default display is equivalent to specifying the -x option.
Votre sortie est en réalité un petit-endian (octet le less significatif en premier), qui est aussi l'endianness des architectures x86 et x86_64, que vous utilisez probablement.