Ecco un esempio di vita reale in cui Hexdump può essere utile. Se stai lavorando con i dati binari, questo sarà molto difficile da capire. Per facilitare, puoi trasformare rapidamente i dati binari in esadecimale o decimale.
In questa guida, controlla come usare il comando hexdump in Linux.
Hexdump in Linux
Hexdump è un programma semplice ma utile che è scritto in lingua C. Ecco perché i programmatori C professionali potrebbero trovare il suo utilizzo facile. Tuttavia, anche se non hai esperienza nella programmazione C, puoi comunque usare hexdump per il tuo scopo.
Hexdump viene preinstallato in qualsiasi distro di Linux. In questa guida, userò Ubuntu per scopi dimostrativi.
Uso di hexdump
Per dimostrare l'uso di hexdump, ho creato un manichino del file di testo di esempio.TXT.
$ gatto fittizio.TXT
Passeremo questo file a hexdump per convertire il suo 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 nello spazio, ciascuno con 3 colonne e zero pieni, in ottale.
$ hexdump -b
Display di caratteri a un byte
Il seguente comando hexdump visualizzerà i dati di input in formato esadecimale. Nell'output, ogni riga contiene 16 caratteri separati nello spazio di dati di input, ognuno con 3 colonne e riempito di spazio.
$ hexdump -c
Display canonico esagonale + ascii
Il seguente comando hexdump visualizzerà i dati di input in esadecimale. Nell'output, ogni riga contiene 16 byte esadecimali separati dallo spazio, ciascuno con 2 colonne. Il seguente contenuto sarà gli stessi byte in %_P Formato racchiuso in "|" caratteri.
$ hexdump -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à 2 byte separate dallo spazio dei dati di input, ciascuno con 5 colonne e zero, in decimale non firmato.
$ 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 dallo spazio di dati di input, ciascuno con 6 colonne e zero pieni, 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 dallo spazio di dati di input, ciascuno con 4 colonne e zero riempiti, in esadecimale.
$ hexdump -x
Visualizza tutti gli input
Quando si usa hexdump, sostituirà il contenuto di linee ripetute con un singolo asterisco. Se vuoi forzare Hexdump a produrre tutti i contenuti, allora usa il flag "-v".
$ gatto fittizio.TXT
$ hexdump -b fittizio.TXT
$ hexdump -v -b
Limitare l'importo 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 del byte.
$ hexdump -s 2 -c
Pensiero finale
Gli esempi dimostrati qui sono i modi in cui userai principalmente hexdump. Per informazioni complete su hexdump, la pagina Man è una delle migliori risorse.
$ man 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 piacciono i nodejs, controlla come utilizzare il debugger Nodejs.
Godere!