hd(1) hd(1)
NAME
hd - Dateiinhalt hexadezimal ausgeben (hex dump)
SYNTAX
hd [-format ...] [-A] [-t] [-s offset[*][wlbk]] [-n zähler[*][wlbk]]
[datei ...]
BESCHREIBUNG
hd gibt den Inhalt von Dateien hexadezimal, oktal, dezimal oder als
Zeichenfolge aus. Die Lage von Zeichen innerhalb eines Zeichensatzes
ist ebenfalls darstellbar.
Weder Format noch Offset noch Zähler angegeben:
hd ist identisch mit hd -abx -A. D. h., Adressen und Bytes werden
hexadezimal ausgegeben. Zusätzlich gibt hd alle Bytes, die druck-
bare Zeichen darstellen, als solche aus und schreibt für die
nichtdruckbaren einen Punkt. Dabei stehen die Adressen am Anfang
jeder Zeile, die Hexadezimaldarstellung der Bytes folgt in den
nächsten Spalten und die Darstellung als Buchstaben bzw. Punkt
steht in jeder Zeile ganz rechts.
Die Adressen werden relativ zum Dateianfang gezählt. Fehlt die
Angabe einer Datei, dann wird von der Standardeingabe gelesen,
sonst wird der Inhalt der angegebenen Dateien aufgelistet.
-format
Format, das festlegt, wie einzelne Byteblöcke interpretiert und
ausgegeben werden sollen.
Ein Format setzt sich zusammen aus
- der Byteblockangabe (a, b, c, l oder w) und
- der Interpretationsart, gemäß der ein Byteblock auszugeben
ist: hexadezimal (x), dezimal (d) oder oktal (o).
Innerhalb eines Formats werden sämtliche angegebenen Interpreta-
tionsarten auf alle angegebenen Byteblöcke angewendet. Formatan-
gaben können zusammengesetzt und wiederholt werden, um Adressen,
Zeichen, Wörter etc. verschieden auszugeben. Sie können z. B. -ax
-bx zusammenfassen zu -abx. Oder Sie können mit -cxdo alle Zei-
chen hexadezimal, dezimal und oktal ausgeben lassen.
Byteblockangabe
a (a - address) Formatangabe für Adressen. Adressen werden nur auf
eine Art interpretiert, hexadezimal, oktal oder dezimal. Die
Adresse steht immer am Anfang jeder auszugebenden Zeile bzw. in der
ersten Zeile eines Ausgabeblocks, falls die Formate mehrere Zeilen
beanspruchten.
b (b - byte) Formatangabe für Bytes.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
hd(1) hd(1)
c (c - character) Formatangabe für Zeichen. Alle druckbaren Zeichen
werden ausgegeben. C-Escape-Zeichen gibt hd so aus, wie sie in der
Sprache definiert sind und die restlichen Zeichen oktal, hexadezi-
mal oder dezimal, je nach Interpretationsart.
l (l - long word) Formatangabe für 4 Byte.
w (w - word) Formatangabe für 2 Byte.
Interpretationsart
x (x - hexadecimal) hd interpretiert Adressen oder Byteblöcke als
Hexadezimalzahlen.
d (d - decimal) hd interpretiert Adressen oder Byteblöcke als Dezi-
malzahlen.
o (o - octal) hd interpretiert Adressen oder Byteblöcke als Oktalzah-
len.
Keine Interpretationsart, aber Byteblockangabe angegeben:
hd interpretiert gemäß -xdo.
Keine Byteblockangabe, außer Adressen, angegeben:
hd verwendet zusätzlich zum angegebenen Adreßformat -bx.
Keine Byteblockangabe, aber Interpretationsart angegeben:
hd interpretiert -acbwl.
-format nicht angegeben:
hd verhält sich wie hd -abx -A.
-A (A - ASCII) hd gibt alle druckbaren Zeichen aus, für nichtdruckbare
Zeichen steht ein Punkt. Die Zeichen werden in der Spalte ausgege-
ben, die rechts auf das erste Ausgabeformat folgt.
-t (t - text) Ist diese Option gesetzt, dann ignoriert hd alle Format-
angaben, die keine Adressen betreffen. hd druckt jede Textzeile mit
der Adreßangabe am Zeilenanfang aus. Zu lange Zeilen werden unter-
teilt. Kontrollzeichen (Wert 0x00 bis 0x1f) werden entsprechend als
Zeichen ^@ bis ^_ ausgegeben. Bytes, bei denen das höchste Bit
gesetzt ist, werden, mit einer Tilde ~ davor, ohne das höchste Bit
ausgegeben. Den Zeichen Dach ^, Tilde ~ und Gegenschrägstrich \
wird bei der Ausgabe ein Gegenschrägstrich vorangestellt. In Spezi-
alfällen werden Werte numerisch repräsentiert, z. B. DELETE (127,
7-Bit) als \177 und ÿ (255, 8-Bit) als \377.
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
hd(1) hd(1)
-s offset[*][wlbk]
Relative Adresse, ab der die Ausgabe des Dateiinhalts beginnen
soll. Falls Sie keine Datei angeben oder über eine Pipe eingeben,
werden entsprechend viele Bytes überlesen. hd bricht die Behandlung
der aktuellen Datei ab, falls die Adreßangabe fehlerhaft ist.
Die relative Adresse besteht aus einer Zahl, die Sie dezimal, hexa-
dezimal (mit 0x davor) oder oktal (mit 0 davor) angeben und optio-
nal einer Maßeinheit, die Sie direkt an die Zahl anhängen. Mögliche
Einheiten sind:
w 2 Byte (d. h. ein Wort)
l 4 Byte (d. h. ein langes Wort)
b 512 Byte (d. h. ein halbes KByte)
k 1024 Byte (d. h. ein KByte)
Um eine Hexadezimalzahl, die ja die Ziffer b enthalten darf, von
der Einheit b zu unterscheiden, schreiben Sie in diesem Fall zwi-
schen die Zahl und die Einheit b einen Stern *.
Mögliche Offsetangaben sind z. B.:
-s 111 (111 Byte), -s 124l (496 Byte), -s 0xa*b (5120 Byte), -s
011k (9216 Byte).
-s offset[*][wlbk] nicht angegeben:
hd gibt ab Dateianfang aus.
-n zähler[*][wlbk]
Anzahl der Bytes, die hd ausgeben soll. Die Byte-Anzahl geben Sie
ebenso wie die Relativadresse an: dezimal, hexadezimal oder oktal
mit eventuell folgendem w, l, b oder k (siehe -s).
datei
Name der Datei, die hd auflisten soll. Pro Aufruf können Sie meh-
rere Dateinamen angeben.
datei nicht angegeben:
hd liest die Eingabezeilen von der Standardeingabe.
SIEHE AUCH
od(1).
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98