GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Gibt es ein Dienstprogramm wie Hexdump, das mit nicht-nativem Endian-Niveau umgehen kann?

Zumindest für 16-Bit-Wörter kann man es durch dd conv=swab leiten wie in,

cat file.dat | dd conv=swab | od -t x2

Gibt es ein Dienstprogramm wie hexdump, das mit nicht-nativem Endian-Niveau umgehen kann?

Ja, das Dienstprogramm heißt Perl.

Nun, eigentlich Data::HexDumper - obwohl Sie Ihren eigenen rollen könnten.

number_format
A string specifying how to format the data. It can be any of the following,
which you will notice have the same meanings as they do to perl's pack function:

C        - unsigned char
S        - unsigned 16-bit, native endianness
v or S<  - unsigned 16-bit, little-endian
n or S>  - unsigned 16-bit, big-endian
L        - unsigned 32-bit, native endianness
V or L<  - unsigned 32-bit, little-endian
N or L>  - unsigned 32-bit, big-endian
Q        - unsigned 64-bit, native endianness
Q<       - unsigned 64-bit, little-endian
Q>       - unsigned 64-bit, big-endian

Wie Pixelbeat vorschlägt, könnten Sie objcopy:

verwenden
$ objcopy -I binary -O binary --reverse-bytes=num inputfile.bin outputfile.bin

wobei num ist 2 für 16-Bit-Wörter, 4 für 32-Bit-Wörter und 8 für 64-Bit-Wörter.

Leider hat objcopy keine Option, Eingaben von stdin zu akzeptieren oder Ausgabe in stdout schreiben , um es also als Pipe zu verwenden, müssten Sie ein Wrapper-Skript schreiben, das temporäre Dateien erstellt.

Diese Antwort wird von https://stackoverflow.com/a/19288235/1979048 und von https://serverfault.com/a/329207/157443 kopiert.


Linux
  1. Wie wird die Technik in 30 Jahren aussehen?

  2. Wie benenne ich Dateien speziell in einer Liste um, die Wget verwendet?

  3. Gibt es eine Möglichkeit, von UTF8 nach ISO-8859-1 zu konvertieren?

  4. Gibt es einen Linux-Befehl wie mv, aber mit Regex?

  5. Gibt es ein Protokoll, das Shutdowns in Linux aufzeichnet?

Unix Bash Alias ​​Tutorial – Behandeln Sie den Alias-Befehl wie Jennifer Garner

Gibt es ein Programm wie COM0COM unter Linux?

Wo kann ich Umgebungsvariablen festlegen, die crontab verwendet?

Gibt es ein Dienstprogramm zum Erstellen leerer Bilder?

Gibt es ein Linux-vfs-Tool, das es ermöglicht, ein Verzeichnis an einem anderen Ort (wie mount --bind) im Benutzerbereich zu binden?

So etwas wie YaST für Nicht-SUSE-Distributionen