Hier ist ein reales Beispiel, bei dem Hexdump hilfreich sein kann. Wenn Sie mit Binärdaten arbeiten, ist dies sehr schwer zu verstehen. Der Einfachheit halber können Sie die Binärdaten schnell in hexadezimale oder dezimale umwandeln.
In diesem Handbuch erfahren Sie, wie Sie den Befehl hexdump unter Linux verwenden.
Hexdump unter Linux
Hexdump ist ein einfaches, aber nützliches Programm, das in der Sprache C geschrieben ist. Aus diesem Grund können professionelle C-Programmierer die Verwendung leicht finden. Aber auch wenn Sie keine Erfahrung in der C-Programmierung haben, können Sie Hexdump für Ihre Zwecke verwenden.
Hexdump ist in jeder Linux-Distribution vorinstalliert. In diesem Handbuch verwende ich Ubuntu zu Demonstrationszwecken.
Hexdump-Nutzung
Um die Verwendung von Hexdump zu demonstrieren, habe ich einen Beispieltextdatei-Dummy erstellt.TXT.
$ Katzenpuppe.TXT
Wir übergeben diese Datei an hexdump, um ihren Inhalt in verschiedene Ausgabeformate zu konvertieren.
Ein-Byte-Oktalanzeige
Der folgende hexdump-Befehl druckt die Eingabedaten im hexadezimalen Format. In der Ausgabe enthält jede Zeile 16 durch Leerzeichen getrennte Bytes an Eingabedaten mit jeweils 3 Spalten und Nullen in Oktal.
$ hexdump -b
Ein-Byte-Zeichenanzeige
Der folgende hexdump-Befehl zeigt die Eingabedaten im hexadezimalen Format an. In der Ausgabe enthält jede Zeile 16 durch Leerzeichen getrennte Zeichen der Eingabedaten, die jeweils 3 Spalten haben und mit Leerzeichen gefüllt sind.
$ hexdump -c
Kanonisches Hex + ASCII-Display
Der folgende hexdump-Befehl zeigt die Eingabedaten in hexadezimal an. In der Ausgabe enthält jede Zeile 16 durch Leerzeichen getrennte hexadezimale Bytes mit jeweils 2 Spalten. Der folgende Inhalt hat die gleichen Bytes in %_p Format in „|“ eingeschlossen Zeichen.
$ hexdump -C
Zwei-Byte-Dezimalanzeige
Der folgende hexdump-Befehl zeigt die Eingabedaten im hexadezimalen Format an. In der Ausgabe enthält jede Zeile 8 durch Leerzeichen getrennte 2-Byte-Einheiten von Eingabedaten, die jeweils 5 Spalten haben und mit Nullen gefüllt sind, in Dezimalzahlen ohne Vorzeichen.
$ hexdump -d
Zwei-Byte-Oktalanzeige
Der folgende hexdump-Befehl druckt die Eingabedaten im hexadezimalen Format. In der Ausgabe enthält jede Zeile 8 durch Leerzeichen getrennte 2 Byte Eingabedaten mit jeweils 6 Spalten und Nullen aufgefüllt, in Oktal.
$ hexdump -o
Zwei-Byte-Hexadezimalanzeige
Der folgende hexdump-Befehl druckt die Eingabedaten im hexadezimalen Format. In der Ausgabe enthält jede Zeile 8 durch Leerzeichen getrennte 2 Byte Eingabedaten mit jeweils 4 Spalten und Nullen aufgefüllt, in hexadezimal.
$hexdump -x
Alle Eingaben anzeigen
Bei Verwendung von Hexdump wird der Inhalt wiederholter Zeilen durch ein einzelnes Sternchen ersetzt. Wenn Sie hexdump erzwingen möchten, dass der gesamte Inhalt ausgegeben wird, verwenden Sie das Flag „-v“.
$ Katzenpuppe.TXT$ hexdump -b dummy.TXT
$ hexdump -v -b
Anzahl der Bytes begrenzen
Hexdump unterstützt die Möglichkeit, eine bestimmte Anzahl von Bytes aus einer Datei zu Hexdump zu bestimmen. Um die Menge anzugeben, verwenden Sie das Flag „-s“ gefolgt von der Byte-Anzahl.
$ hexdump -s 2 -c
Letzter Gedanke
Die hier demonstrierten Beispiele sind die Verwendungsmöglichkeiten von Hexdump. Für vollständige Informationen zu Hexdump ist die Manpage eine der besten Ressourcen.
$ man hexdump
Hexdump ist ein leistungsstarkes Werkzeug, wenn Sie wissen, wann und wie es verwendet wird. Allerdings sind Tools nicht immer die Lösung, wenn es um Debugging geht. Sehen Sie sich an, wie Sie ein Bash-Skript debuggen. Wenn Sie sich für NodeJS interessieren, sehen Sie sich an, wie Sie den NodeJS-Debugger verwenden use.
Genießen!