Come usare il comando hexdump in Linux?

Come usare il comando hexdump in Linux?
Hexdump è uno strumento potente nei sistemi Linux che sono principalmente utilizzati dagli sviluppatori e dai debugger per app. Può convertire file di input e dati in un formato piacevole e leggibile.

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!