Provided by: util-linux-locales_2.39.3-9ubuntu6.3_all 

BEZEICHNUNG
hexdump - Dateiinhalte hexadezimal, dezimal, oktal oder in ASCII ausgeben
hexdump Optionen Datei ...
hd Optionen Datei ...
BESCHREIBUNG
Das Dienstprogramm hexdump ist ein Filter, der in einem benutzerspezifischen Format die angegebenen
Dateien oder den Inhalt der Standardeingabe anzeigt (falls keine Dateien angegeben sind).
OPTIONEN
Nachfolgend kann den Argumenten Größe und Versatz eines der multiplikativen Suffixe KiB (=1024), MiB
(=1024*1024) und so weiter für GiB, TiB, PiB, EiB, ZiB und YiB folgen (das »iB« ist optional, zum
Beispiel ist »K« gleichbedeutend mit »KiB«) oder die Suffixe KB (=1000), MB (=1000*1000) und so weiter
für GB, TB, PB, EB, ZB und YB folgen.
-b, --one-byte-octal
Oktale Ein-Byte-Anzeige. Dies zeigt den Eingabeversatz in hexadezimaler Form, gefolgt von sechzehn
durch Leerräume getrennten, dreispaltigen, mittels Nullen aufgefüllten Zeichen der Eingabedaten in
oktaler Notation pro Zeile an.
-c, --one-byte-char
Zeichenbasierte Ein-Byte-Anzeige. Dies zeigt den Eingabeversatz in hexadezimaler Form, gefolgt von
sechzehn durch Leerräume getrennten, dreispaltigen, mittels Leerräumen aufgefüllten Zeichen der
Eingabedaten pro Zeile an.
-C, --canonical
Kanonische Hex+ASCII-Anzeige. Dies zeigt den Eingabeversatz in hexadezimaler Form , gefolgt von
sechzehn durch Leerräume getrennten, zweispaltigen hexadezimalen Bytes an, gefolgt von den gleichen
sechzehn Bytes im Format %_p, in | eingeschlossen. Der Aufruf des Programms als hd impliziert diese
Option.
-d, --two-bytes-decimal
Dezimale Zwei-Byte-Anzeige. Dies zeigt den Eingabeversatz in hexadezimaler Form an, gefolgt von acht
durch Leerräume getrennten, fünfspaltigen, mittels Nullen aufgefüllten Zwei-Byte-Einheiten der
Eingabedaten und in vorzeichenloser dezimaler Notation pro Zeile an.
-e, --format Formatzeichenkette
gibt eine Formatzeichenkette an, die für die Anzeige der Daten verwendet werden soll.
-f, --format-file Datei
gibt eine Datei an, die eine oder mehrere durch Zeilenvorschübe getrennte Formatzeichenketten
enthält. Leere Zeilen und solche, deren erstes auf eventuellen Leerraum folgende Zeichen eine Raute
ist (#), werden ignoriert.
-L, --color[=wann]
akzeptiert Farbeinheiten für die Ausgabe. Das optionale Argument wann kann auto (automatisch), never
(niemals) oder always (immer) sein. Falls das Argument wann nicht angegeben wird, dann wird
standardmäßig auto verwendet. Die Farben können deaktiviert werden; die aktuelle eingebaute
Voreinstellung finden Sie in der Ausgabe der Option --help. Siehe auch den Unterabschnitt Farben und
den nachfolgenden Abschnitt FARBEN.
-n, --length Länge
wertet nur die angegebene Länge an Bytes der Eingabe aus.
-o, --two-bytes-octal
Oktale Zwei-Byte-Anzeige. Dies zeigt den Eingabeversatz in hexadezimaler Form, gefolgt von acht durch
Leerräume getrennten, sechsspaltigen, mittels Nullen aufgefüllten Zwei-Byte-Einheiten der
Eingabedaten und in oktaler Notation pro Zeile an.
-s, --skip Versatz
überspringt den angegebenen Versatz an Bytes vom Beginn der Eingabe.
-v, --no-squeezing
veranlasst hexdump, alle Eingabedaten anzuzeigen. Ohne die Option -v wird sämtliche Anzahl
Ausgabezeilengruppen, die identisch zur unmittelbar vorausgehenden Ausgabezeilengruppe wären (außer
den Eingabeversätzen), durch eine aus einem einzelnen Stern bestehende Zeile ersetzt.
-x, --two-bytes-hex
Hexadezimale Zwei-Byte-Anzeige. Dies zeigt den Eingabeversatz in hexadezimaler Form, gefolgt von acht
durch Leerräume getrennten, vierspaltigen, mittels Nullen aufgefüllten Zwei-Byte-Einheiten der
Eingabedaten und in hexadezimaler Notation pro Zeile an.
-h, --help
zeigt einen Hilfetext an und beendet das Programm.
-V, --version
zeigt Versionsinformationen an und beendet das Programm.
Für jede Eingabedatei kopiert hexdump die Eingabe sequenziell in die Standardausgabe, wobei die Daten
anhand der in den Optionen -e und -f angegebenen Formatzeichenketten in deren angegebener Reihenfolge
umgewandelt werden.
FORMATE
Eine Formatzeichenkette enthält eine beliebige Anzahl an Formatierungseinheiten, die durch Leerzeichen
getrennt sind. Eine Formatierungseinheit einhält bis zu drei Einträge: Einen Iterationszähler, einen
Byte-Zähler und ein Format.
Der Iterationszähler ist eine optionale positive Ganzzahl, deren Vorgabe 1 ist. Jedes Format wird so oft
angewendet, wie der Iterationszähler angibt.
Der Byte-Zähler ist eine optionale positive Ganzzahl. Falls diese angegeben wird, gibt sie die Anzahl an
Bytes an, die bei jeder Iteration des Formats interpretiert werden sollen.
Falls ein Iterations- oder Byte-Zähler angegeben ist, muss nach dem Iterationszähler und/oder vor dem
Byte-Zähler ein einzelner Schrägstrich gesetzt werden, um die beiden Angaben eindeutig voneinander zu
trennen. Sämtlicher Leerraum vor oder nach dem Schrägstrich wird ignoriert.
Das Format ist verpflichtend und muss in doppelte Anführungszeichen (" ") eingeschlossen werden. Es wird
als eine Formatzeichenkette im Fprintf-Stil (siehe fprintf(3)) mit den folgenden Ausnahmen interpretiert:
1.
Ein Stern (*) darf nicht zur Angabe der Feldbreite oder Genauigkeit verwendet werden.
2.
Ein Byte-Zähler oder eine Feldgenauigkeit ist für jedes s-Konversionszeichen erforderlich (im
Gegensatz zur Standardeinstellung in fprintf(3), wo die gesamte Zeichenkette ausgegeben wird, falls
keine Genauigkeit angegeben ist).
3.
Die Konversionszeichen h, l, n, p und q werden nicht unterstützt.
4.
Die im C-Standard beschriebenen aus einem Zeichen bestehenden Escape-Sequenzen werden unterstützt:
┌────────────────────────┬────┐
│ │ │
│ NULL │ \0 │
├────────────────────────┼────┤
│ │ │
│ <Warnzeichen> │ \a │
├────────────────────────┼────┤
│ │ │
│ <Rückschritt> │ \b │
├────────────────────────┼────┤
│ │ │
│ <Seitenvorschub> │ \f │
├────────────────────────┼────┤
│ │ │
│ <neue Zeile> │ \n │
├────────────────────────┼────┤
│ │ │
│ <Wagenrücklauf> │ \r │
├────────────────────────┼────┤
│ │ │
│ <Tabulator> │ \t │
├────────────────────────┼────┤
│ │ │
│ <vertikaler Tabulator> │ \v │
└────────────────────────┴────┘
Konversionszeichenketten
Das Dienstprogramm hexdump unterstützt auch die folgenden zusätzlichen Konversionszeichenketten.
_a[dox]
zeigt den Eingabeversatz des nächsten anzuzeigenden Bytes kumulativ für alle Eingabedateien
an. Die angehängten Zeichen d, o und x geben die Basis der Anzeige als dezimal, oktal
beziehungsweise hexadezimal an.
_A[dox]
ist weitgehend identisch mit der Konversionszeichenkette _a, mit der Ausnahme, dass es nur
einmal ausgeführt wird, wenn sämtliche Eingabedateien verarbeitet wurden.
_c
gibt Zeichen im Standard-Zeichensatz aus. Nicht darstellbare Zeichen werden in einer aus drei
Zeichen bestehenden, mit Nullen aufgefüllten oktalen Schreibweise dargestellt. Das gilt nicht
für jene, die in der Standard-Escape-Notation dargestellt werden können (siehe oben), wo die
Anzeige in aus zwei Zeichen bestehenden Zeichenketten erfolgt.
_p
gibt Zeichen im Standard-Zeichensatz aus. Nicht darstellbare Zeichen werden als einzelner ».«
angezeigt.
_u
gibt US-ASCII-Zeichen aus, mit der Ausnahme, dass Steuerzeichen in den folgenden, klein
geschriebenen Namen angezeigt werden. Zeichen größer als 0xff hexadezimal werden als
hexadezimale Zeichenketten angezeigt.
┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐
│ │ │ │ │ │ │
│ 000 nul │ 001 soh │ 002 stx │ 003 etx │ 004 eot │ 005 enq │
├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
│ │ │ │ │ │ │
│ 006 ack │ 007 bel │ 008 bs │ 009 ht │ 00A lf │ 00B vt │
├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
│ │ │ │ │ │ │
│ 00C ff │ 00D cr │ 00E so │ 00F si │ 010 dle │ 011 dc1 │
├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
│ │ │ │ │ │ │
│ 012 dc2 │ 013 dc3 │ 014 dc4 │ 015 nak │ 016 syn │ 017 etb │
├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
│ │ │ │ │ │ │
│ 018 can │ 019 em │ 01A sub │ 01B esc │ 01C fs │ 01D gs │
├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
│ │ │ │ │ │ │
│ 01E rs │ 01F us │ 0FF del │ │ │ │
└─────────┴─────────┴─────────┴─────────┴─────────┴─────────┘
Farben
Wenn an das Ende eines Formatbezeichners gesetzt, hebt hexdump die jeweilige Zeichenkette
in der angegebenen Farbe hervor. Bedingungen werden, sofern vorhanden, bei der Anwendung
der Hervorhebung bevorzugt.
_L[Farbeinheit_1,Farbeinheit_2,...,Farbeinheit_n]
Die vollständige Syntax einer Farbeinheit ist wie folgt:
[!]FARBE[:WERT][@VERSATZ_BEGINN[-ENDE]]
!
negiert die Bedingung. Bitte beachten Sie, dass die Negierung einer Einheit nur Sinn
ergibt, wenn sowohl Wert/Zeichenkette als auch Versatz angegeben sind. In einem
solchen Fall wird die entsprechende Ausgabezeichenkette nur dann hervorgehoben, wenn
Wert/Zeichenkette nicht zu jener passt, die im Versatz angegeben ist.
FARBE
Eine der acht grundlegenden Shell-Farben.
WERT
Ein Wert, der auf Übereinstimmung geprüft wird, dargestellt in hexadezimaler oder
oktaler Basis oder als Zeichenkette. Bitte beachten Sie, dass die üblichen
C-Escape-Sequenzen innerhalb von Farbeinheiten von hexdump nicht interpretiert
werden.
VERSATZ
Ein Versatz oder Versatzbereich, in dem auf Übereinstimmung geprüft werden soll.
Bitte beachten Sie, dass ein einzelner VERSATZ_BEGINN den gleichen Wert für ENDE
verwendet.
Zähler
Die vorgegebenen und unterstützten Byte-Zähler für die Konversionszeichen sind wie folgt:
%_c, %_p, %_u, %c
Nur Ein-Byte-Zähler.
%d, %i, %o, %u, %X, %x
Vier Byte als Standard, aber auch ein, zwei und vier Byte werden unterstützt.
%E, %e, %f, %G, %g
Acht Byte als Standard, aber auch Vier-Byte-Zähler werden unterstützt.
Die Menge der von jeder Formatzeichenkette interpretierten Daten ist die Summe der für
jede Formateinheit erforderlichen Daten, welches das Produkt aus dem Iterationszähler mit
dem Byte-Zähler oder, falls der Byte-Zähler nicht angegeben ist, das Produkt aus dem
Iterationszähler mit der Anzahl vom Format benötigten Bytes ist.
Die Eingabe wird in Blöcken verarbeitet, wobei ein Block als die größte Menge der von
einer Formatzeichenkette bezeichneten Daten definiert ist. Bei Formatzeichenketten, die
weniger als eine Eingabeblockgröße an Daten auswerten und deren letzte Formateinheit
sowohl einen Anteil an Bytes interpretiert und als auch keinen angegebenen
Iterationszähler haben, wird der Iterationszähler erhöht, bis der gesamte Eingabeblock
verarbeitet wurde oder es nicht mehr genug verbleibende Daten im Block gibt, um der
Formatzeichenkette zu entsprechen.
Falls ein Iterationszähler größer als 1 ist, entweder als Ergebnis der Benutzerangabe
oder wenn hexdump den Iterationszähler wie oben beschrieben verändert hat, werden während
der letzten Iteration keine abschließenden Leerzeichen ausgegeben.
Es ist ein Fehler, sowohl einen Byte-Zähler als auch mehrere Konversionszeichen oder
-zeichenketten anzugeben, es sei denn, alle Konversionszeichen oder -zeichenketten bis
auf eine sind _a oder _A.
Falls, als Ergebnis der Angabe der Option -n oder wenn das Ende der Datei erreicht ist,
die Eingabedaten einer Formatzeichenkette nur teilweise entsprechen, wird der
Eingabeblock mit Nullen aufgefüllt, um alle verfügbaren Daten anzuzeigen (das heißt, jede
Formateinheit, die über das Ende der Daten hinausgeht, zeigt einige NULL-Bytes an).
Weitere Ausgaben solcher Formatzeichenketten werden durch die äquivalente Anzahl
Leerzeichen ersetzt. Eine äquivalente Anzahl Leerzeichen ist als die Anzahl der durch das
Konversionszeichen s ausgegebenen Leerzeichen definiert. Diese haben die gleiche
Feldbreite und Genauigkeit wie das ursprüngliche Konversionszeichen oder die
ursprüngliche Konversionszeichenkette, aber bei allen werden die Konversionszeichen »+«,
» « und »#« entfernt und referenzieren eine NULL-Zeichenkette.
Falls keine Formatzeichenketten angegeben sind, ist die standardmäßige Anzeige sehr
ähnlich zum Ausgabeformat mit der Option -x (die Option -x verursacht mehr Platzverbrauch
zwischen den Formateinheiten als in der standardmäßigen Ausgabe).
EXIT-STATUS
hexdump gibt 0 bei Erfolg und > 0 zurück, wenn ein Fehler aufgetreten ist.
KONFORM ZU
Der Befehl hexdump sollte zu IEEE Std 1003.2 (»POSIX.2«) kompatibel sein.
BEISPIELE
Die Eingabe im Durchsichtsformat anzeigen:
"%06.6_ao " 12/1 "%3_u "
"\t" "%_p "
"\n"
Die Option -x implementieren:
"%07.7_Ax\n"
"%07.7_ax " 8/2 "%04x " "\n"
Beispiel für MBR-Bootsignatur: Die Adressen in Cyan hervorheben und die Bytes an Position
510 und 511 grün hervorheben, falls deren Wert 0xAA55 ist, anderenfalls rot.
"%07.7_Ax_L[cyan]\n"
"%07.7_ax_L[cyan] " 8/2 " %04x_L[green:0xAA55@510-511,!red:0xAA55@510-511] " "\n"
FARBEN
Die farbige Darstellung der Ausgabe wird über die Funktionen in terminal-colors.d(5)
gesteuert. Die implizierte Einfärbung kann deaktiviert werden, indem Sie folgende (leere)
Datei anlegen:
/etc/terminal-colors.d/hexdump.disable
für den Befehl hexdump oder für alle Befehle mit
/etc/terminal-colors.d/disable
Die benutzerspezifischen Dateien $XDG_CONFIG_HOME/terminal−colors.d oder
$HOME/.config/terminal−colors.d setzen die globale Einstellung außer Kraft.
Beachten Sie, dass die Einfärbung der Ausgabe standardmäßig aktiviert sein könnte und in
diesem Fall die terminal-colors.d-Verzeichnisse noch nicht zwangsläufig vorhanden sein
müssen.
FEHLER MELDEN
Nutzen Sie zum Melden von Fehlern das Fehlererfassungssystem auf
https://github.com/util-linux/util-linux/issues.
VERFÜGBARKEIT
Der Befehl hexdump ist Teil des Pakets util-linux, welches aus dem Linux-Kernel-Archiv
<https://www.kernel.org/pub/linux/utils/util-linux/> heruntergeladen werden kann.
util-linux 2.39.3 2025-06-05 HEXDUMP(1)