Name

xxd [options] [files] — vim-common

Synopsis

/usr/bin stdin stdout - file -- opt --help --version

Similar to od, xxd produces a hexadecimal or binary dump of a file in several different formats. It can also do the reverse, converting from its hex dump format back into the original data. For example, the command:

$ xxd /usr/bin/who
0000000: 7f45 4c46 0101 0100 0000 0000 0000 0000 .ELF............
0000010: 0200 0300 0100 0000 a08c 0408 3400 0000 ............4...
0000020: 6824 0000 0000 0000 3400 2000 0600 2800 h$......4. ...(.
0000030: 1900 1800 0600 0000 3400 0000 3480 0408 ........4...4...
...

displays a hex dump of binary file /usr/bin/who, 16 bytes per row. The left column indicates the file offset of the row, the next eight columns contain the data, and the final column displays the printable characters in the row, if any.

xxd produces three-column output by default: file offsets, the data in hex, and the data as text (printable characters only).

Useful options

-l N

Display only the first N bytes. (Default is to display the entire file)

-s N

-s -N

Begin at a position other than the first byte of the file. The first form skips the first N bytes. The second (-N) begins N bytes from the end of the file. (There is also a +N syntax for more advanced skipping through standard input; see the manpage.)

-c N

Display N bytes per row. (Default=16)

-g N

Group each row of bytes into sequences of N bytes, separated by whitespace, like od -s. (Default=2)

-b

Display the output in binary instead of hexadecimal. ...

Get Linux Pocket Guide now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.