Ecco un esempio di vita reale in cui hexdump può essere utile. Se stai lavorando con dati binari, sarà molto difficile da capire. Per facilità, puoi trasformare rapidamente i dati binari in esadecimali o decimali.
In questa guida, scopri come utilizzare il comando hexdump in Linux.
Hexdump in Linux
Hexdump è un programma semplice ma utile scritto in linguaggio C. Ecco perché i programmatori C professionisti possono trovare facile il suo utilizzo. Tuttavia, anche se non hai esperienza nella programmazione C, puoi comunque utilizzare hexdump per il tuo scopo.
Hexdump è preinstallato in qualsiasi distribuzione Linux. In questa guida userò Ubuntu a scopo dimostrativo.
Utilizzo del dump esadecimale
Per dimostrare l'utilizzo di hexdump, ho creato un file di testo di esempio fittizio.TXT.
$ gatto manichino.TXT
Passeremo questo file a hexdump per convertirne il contenuto in vari formati di output.
Display ottale a un byte
Il seguente comando hexdump stamperà i dati di input in formato esadecimale. Nell'output, ogni riga contiene 16 byte di dati di input separati da spazi, ciascuno con 3 colonne e riempito con zero, in ottale.
$ hexdump -b
Visualizzazione caratteri a un byte
Il seguente comando hexdump visualizzerà i dati di input in formato esadecimale. Nell'output, ogni riga contiene 16 caratteri separati da spazi di dati di input, ciascuno con 3 colonne e riempito con spazi.
$ hexdump -c
Display canonico esadecimale + ASCII
Il seguente comando hexdump visualizzerà i dati di input in esadecimale. Nell'output, ogni riga contiene 16 byte esadecimali separati da spazi, ciascuno con 2 colonne. Il seguente contenuto sarà gli stessi byte in %_p formato racchiuso tra “|” personaggi.
$ dump esadecimale -C
Display decimale a due byte
Il seguente comando hexdump visualizzerà i dati di input in formato esadecimale. Nell'output, ogni riga contiene 8 unità di dati di input da 2 byte separate da spazi, ciascuna avente 5 colonne e riempita con zero, in decimale senza segno.
$ hexdump -d
Display ottale a due byte
Il seguente comando hexdump stamperà i dati di input in formato esadecimale. Nell'output, ogni riga contiene 8 2 byte separati da spazi di dati di input, ciascuno con 6 colonne e riempito con zero, in ottale.
$ hexdump -o
Display esadecimale a due byte
Il seguente comando hexdump stamperà i dati di input in formato esadecimale. Nell'output, ogni riga contiene 8 2 byte separati da spazi di dati di input, ciascuno con 4 colonne e riempito con zero, in esadecimale.
$ hexdump -x
Visualizza tutti gli input
Quando si utilizza hexdump, sostituirà il contenuto delle righe ripetute con un singolo asterisco. Se vuoi forzare hexdump per l'output di tutti i contenuti, usa il flag "-v".
$ gatto manichino.TXT$ hexdump -b fittizio.TXT
$ dump esadecimale -v -b
Limita la quantità di byte
Hexdump supporta l'opzione di decidere un numero specifico di byte da un file a hexdump. Per specificare l'importo, utilizzare il flag "-s" seguito dall'importo in byte.
$ dump esadecimale -s 2 -c
pensiero finale
Gli esempi mostrati qui sono i modi in cui utilizzerai principalmente hexdump. Per informazioni complete su hexdump, la pagina man è una delle migliori risorse.
$ uomo hexdump
Hexdump è uno strumento potente se sai quando e come usarlo. Tuttavia, gli strumenti non sono sempre la risposta quando si tratta di debug. Scopri come eseguire il debug di uno script bash. Se ti piace NodeJS, controlla come utilizzare il debugger NodeJS.
Godere!