Risposte:
hdè sinonimo di hexdump -Csu FreeBSD e di alcune distribuzioni Linux. hexdumpè dai giorni BSD ; odè dall'alba dei tempi . Solo odè standardizzato da POSIX . La logica unica di UNIX discute il motivo per cui è odstato scelto in preferenza hdo xd.
Questi comandi eseguono operazioni molto simili: visualizzare una rappresentazione testuale di un file binario, usando la notazione ottale, decimale o esadecimale. Non c'è alcuna differenza fondamentale tra i due.
Hanno molte opzioni per controllare il formato di output e alcuni formati possono essere raggiunti solo con l'uno o l'altro comando. In particolare, per vedere il contenuto di un file binario, mi piace hdil formato di output, con una colonna a destra che mostra letteralmente i caratteri stampabili; odnon posso farlo.
$ 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.....|
042577sono 18 bit, ovvero 9/4 byte?
123è un numero rappresentato nella base 10 (decimale), mentre 0123significa che il numero è rappresentato nella base 8 (ottale), ovvero 012383. 0x123sarebbe nella base 16 (esadecimale), ovvero 291. Questo è non correlato al odformato di output.
In realtà odpuò visualizzare sia caratteri esadecimali / ott / dec che caratteri stampabili:
$ 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 differenza principale, immagino, è solo storica. Inoltre alcune versioni hdpossono colorare l'output.
odnon supporta il zsuffisso in-tx1z
hd. Tuttavia, utile, grazie :)
xxdanche! : D