hexdump — dump a file to stdout in CP/M-like hexadecimal format


hexdump [-V ] [-w ] [-e ] [-c ] [-g ] [-s ] [filename...]


This program dumps a binary file to stdout in a form friendlier to the eyeball than either raw binary or the output of the Unix od(1) command. The default format is a CP/M style hexadecimal dump with byte offset in file, 16 bytes of hex and 16 bytes of alpha representation with '.' for non-printables per line. If no filename is given, hex reads from standard input.

The program accepts the following options to control its output:


set # of bytes dumped per line (default is 16)


display EBCDIC character assignments rather than ASCII


display printable characters as text in-line


don't output mid-page gutter


dump file section


print version number and exit

The command line is scanned left-to-right for filenames and options, and each file dumped according to the format defined by preceding options. To turn off an option, precede the letter with a +. Options that take arguments may have them immediately following the option letter or whitespace-separated.

If the command-line arguments include two or more filenames (with - being regarded as a `filename' for standard input), hexdump will emit a one-line header giving the name of the file in front of each input file.

The -s option expects a start offset, optionally followed by a comma-separated count. Each of these should be a decimal or hexadecimal integer (hexadecimal must be prefixed by x or h; leading zeros will be ignored).

The -w option expects a width, formatted as a single decimal or haxadecimal number in the style of an -s option argument. Odd widths turn on the -g option.


The definition of EBCDIC used is IBM's ASCII-compatible 96-character SCS set used with Systems Network Architecture (SNA).


Eric S. Raymond . See my home page at for updates and related resources.