Beliebte Beiträge Auf Dem Pc Und Software

Top Artikel Auf Internet - 2018

Linux - Unix Befehl: hexdump

Name

hexdump - ascii, dezimal, hexadezimal, oktal dump

Übersicht

[- bcCdovx ] - Wörter [- e Formatzeichenfolge ] -Wörter [- f Formatdatei ] -Wörter [- n Länge ] -Wörter [ - s Überspringen ] Datei ...

Beschreibung

Das Dienstprogramm hedddump ist ein Filter, der die angegebenen Dateien oder die Standardeingabe anzeigt, wenn keine Dateien vorhanden sind werden angegeben, in einem vom Benutzer angegebenen Format.

Die Optionen sind wie folgt:

-b

Ein-Byte-Oktalanzeige Zeigt den Eingabe-Offset in Hexadezimal, gefolgt von 16 Leerzeichen getrennt, dreispaltig an , Null gefüllt, Bytes von Eingangsdaten, in Oktal, pro Zeile.

-c

Ein-Byte-Zeichenanzeige Zeigt den Eingangs-Offset in Hexadezimal, gefolgt von 16 Leerzeichen getrennt, drei Spalten, Leerzeichen -gefüllte Zeichen der Eingabedaten pro Zeile

-C

Kanonische Hexadezimalanzeige + ASCII-Anzeige Zeigt den Eingabe-Offset in Hexadezimalzahl an adezimal, gefolgt von sechzehn durch Leerzeichen getrennten, zweispaltigen, hexadezimalen Bytes, gefolgt von den gleichen sechzehn Bytes im% _p-Format, eingeschlossen in Zeichen `| ''.

-d

Zwei-Byte-Dezimalanzeige Zeigen Sie den Eingabeoffset in hexadezimal an, gefolgt von acht durch Leerzeichen getrennten, fünfspaltigen, nullgefüllten Zwei-Byte-Einheiten von Eingabedaten in vorzeichenloser Dezimalzahl pro Zeile.

-e format_string

Geben Sie a an Formatzeichenfolge, die für die Anzeige von Daten verwendet werden soll.

-f formatdatei

Geben Sie eine Datei an, die eine oder mehrere Zeilenfolgen mit getrennten Zeilen enthält. Leere Zeilen und Zeilen, deren erstes Leerzeichen ein Hashzeichen ist ( # wird ignoriert.

-n Länge

Interpretiert nur Länge Bytes der Eingabe.

-o

Zwei-Byte-Oktalanzeige Zeigt den Eingabeoffset in Hexadezimal, gefolgt von acht Leerzeichen getrennt, sechs Spalten, Null gefüllt, Zwei-Byte-Mengen von Eingabedaten, in Oktal, pro Zeile .

-s offset

Überspringen offset Bytes vom Anfang der Eingabe. offset wird standardmäßig als Dezimalzahl interpretiert. Mit einem führenden 0x oder 0X offset wird als Hexadezimalzahl interpretiert, andernfalls wird mit einem führenden 0 offset interpretiert eine Oktalzahl, wenn das Zeichen b k oder m bis offset als ein Vielfaches von 512 interpretiert wird 1024 oder 1048576 bzw.

-v

Die Option - v bewirkt, dass der Hexdump alle Eingabedaten anzeigt. Ohne die Option - v wird eine beliebige Anzahl von Gruppen von Ausgabezeilen, die mit der unmittelbar vorhergehenden Gruppe von Ausgabezeilen (außer den Eingabeversätzen) identisch sind, durch eine Zeile ersetzt, die aus einem einzelnen Stern besteht .

-x

Zwei-Byte-Hexadezimalanzeige Zeigt den Eingangs-Offset in hexadezimaler Form an, gefolgt von acht, durch Leerzeichen getrennte, vierspaltige, gefüllte 2-Byte-Mengen an Eingangsdaten in hexadezimaler, pro Zeile.

kopiert für jede Eingabedatei sequenziell die Eingabe in die Standardausgabe und wandelt die Daten entsprechend den Formatstrings um, die in den Optionen - e und - f angegeben sind Reihenfolge, dass sie angegeben wurden.

Formate

Eine Format-Zeichenfolge enthält eine beliebige Anzahl von Format-Einheiten, getrennt durch Leerzeichen. Eine Formateinheit enthält bis zu drei Elemente: eine Iterationszählung, eine Bytezahl und ein Format.

Die Iterationszahl ist eine optionale positive Ganzzahl, die standardmäßig auf 1 gesetzt wird. Jedes Format wird auf Iterationsanzahl angewendet.

Die Byteanzahl ist eine optionale positive Ganzzahl. Wenn angegeben, definiert es die Anzahl der Bytes, die bei jeder Iteration des Formats interpretiert werden sollen.

Wenn eine Iterationszahl und / oder eine Byteanzahl angegeben wird, muss nach der Iterationszählung und / oder vor dem Byte ein einzelner Schrägstrich eingefügt werden zählen Sie, um sie zu disambiguieren.

Alle Leerzeichen vor oder nach dem Schrägstrich werden ignoriert.

Das Format ist erforderlich und muss von doppelten Anführungszeichen ("") umgeben sein. Sie wird als Formatvorlage im fprintf-Stil interpretiert (siehe fprintf (3)), mit folgenden Ausnahmen:

  • Ein Sternchen (*) darf nicht als Feldbreite oder -genauigkeit verwendet werden.
  • Eine Byteanzahl oder ein Byte Genauigkeit ist erforderlich für jedes "s" Konvertierungszeichen (anders als der Standardwert fprintf (3), der den gesamten String druckt, wenn die Genauigkeit nicht spezifiziert ist.)
  • Die Umrechnungszeichen `` h '', `` l '', '`n' ',` `p' 'und` `q' 'werden nicht unterstützt.
  • Die im C-Standard beschriebenen Escape-Sequenzen für einzelne Zeichen werden unterstützt:
    NUL 0
    a
    b
    f
    n
    r
    t
    v

    Hexdump unterstützt auch die folgenden zusätzlichen Konvertierungszeichenfolgen:

    _a [ dox ]

    Zeigt den Eingangsoffset des nächsten Byte, das angezeigt werden soll, kumulativ über die Eingabedateien an. Die angehängten Zeichen d o und x geben die Anzeigebasis als dezimal, oktal oder hexadezimal an.

    _A [ dox ]

    Identisch mit der _a Konvertierungszeichenfolge, außer dass sie nur einmal ausgeführt wird, wenn alle Eingabedaten verarbeitet wurden.

    _c

    Ausgabezeichen im Standardzeichensatz . Nonprinting-Zeichen werden in drei Zeichen ohne Oktade dargestellt, mit Ausnahme der durch Standard-Escape-Notation darstellbaren Zeichen (siehe oben), die als zwei Zeichenfolgen angezeigt werden.

    _p

    Ausgabezeichen im Standardzeichensatz. Nicht druckbare Zeichen werden als einzelne `` . '

    _u

    US-ASCII-Zeichen ausgegeben, mit der Ausnahme, dass Steuerzeichen mit den folgenden Kleinbuchstaben angezeigt werden. Zeichen größer als 0xff, hexadezimal, werden als hexadezimale Zeichenfolgen dargestellt.

    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 unter 01B esc 01C fs 01D gs

    01E rs 01F us 0FF del

    Die voreingestellten und unterstützten Byte-Zählungen für die Umwandlungszeichen lauten wie folgt:

    % _ c,% _p,% _u,% c

    Nur ein Byte zählt.

    % d,% i,% o % u,% X,% x

    Vier Byte-Standardwerte, ein, zwei und vier Byte werden unterstützt.

    % E,% e,% f % G,% g

    Acht Byte Standard, vier Byte werden unterstützt

    Die Menge an Daten, die von jeder Formatzeichenkette interpretiert wird, ist die Summe der Daten, die für jede Formateinheit benötigt werden, das ist die Iterationsanzahl mal die Byteanzahl oder die Iterationsanzahl die Anzahl der Bytes, die vom Format benötigt werden, wenn die Anzahl der Bytes nicht angegeben ist.

    Das in put wird in `` blocks '' manipuliert, wobei ein Block als die größte Menge an Daten definiert ist, die von einer Formatzeichenfolge angegeben wird. Formatstrings, die weniger als die Daten eines Eingabeblocks interpretieren, deren letzte Formateinheit sowohl eine bestimmte Anzahl von Bytes interpretiert als auch keine spezifizierte Iterationszahl hat, werden die Iterationszählung inkrementiert, bis der gesamte Eingabeblock verarbeitet wurde oder nicht genügend Daten vorhanden sind Bleibt im Block, um die Formatzeichenfolge zu erfüllen.

    Wenn entweder aufgrund der Benutzerspezifikation oder des Hexdump-Änderns der Iterationszählung, wie oben beschrieben, eine Iterationszahl größer als Eins ist, werden während der letzten Iteration keine nachgestellten Leerzeichen ausgegeben .

    Es ist ein Fehler, eine Anzahl von Bytes sowie mehrere Umrechnungszeichen oder Zeichenketten anzugeben, es sei denn, bis auf eines der Umrechnungszeichen oder Zeichenfolgen ist _a oder _A

    If, as ein Ergebnis der Angabe der - n -Option oder des Dateiendes wird erreicht, Eingabedaten genügen nur teilweise einer Formatzeichenkette, der Eingabeblock ist ausreichend gepolt, um alle verfügbaren Daten (z. B. beliebig) anzuzeigen Formateinheiten o Verlap- pen des Datenendes zeigt eine Anzahl von Null-Bytes an.

    Die Ausgabe von solchen Formatzeichenfolgen wird durch eine äquivalente Anzahl von Leerzeichen ersetzt. Eine äquivalente Anzahl von Leerzeichen ist definiert als die Anzahl der von einem ausgegebenen Leerzeichens Konvertierungszeichen mit der gleichen Feldbreite und Genauigkeit wie das ursprüngliche Konvertierungszeichen oder die Konvertierungszeichenfolge, aber mit jedem `` + '' '' '' ` # '' Konvertierungsmarkierungszeichen entfernt und Verweis auf eine NULL-Zeichenfolge

    Wenn keine Formatzeichenfolgen angegeben sind, entspricht die Standardanzeige der Angabe der Option - x

    beendet 0 bei Erfolg und> 0 if ein Fehler ist aufgetreten.

    BEISPIELE

    Die Eingabe im Format anzeigen:

      "% 06.6_ao" 12/1 "% 3_u" " t  t" "% _p" " n" 

    Implementieren Sie die Option -x Option:

      "% 07.7_Ax  n" "% 07.7_ax" 8/2 "% 04x" " n" 

    Standards

    Es wird erwartet, dass das Dienstprogramm mit St -p1003.2 kompatibel ist.

    Senden Sie Ihren Kommentar