specified.
The input is manipulated in blocks, where a block is
defined as the largest amount of data specified by any
format string. Format strings interpreting less than an
input block’s worth of data, whose last format unit both
interprets some number of bytes and does not have a
specified iteration count, have the iteration count
incremented until the entire input block has been
processed or there is not enough data remaining in the
block to satisfy the format string.
If, either as a result of user specification or hexdump
modifying the iteration count as described above, an
iteration count is greater than one, no trailing
whitespace characters are output during the last
iteration.
It is an error to specify a byte count as well as
multiple conversion characters or strings unless all but
one of the conversion characters or strings is _a or _A.
If, as a result of the specification of the -n option or
end-of-file being reached, input data only partially
satisfies a format string, the input block is
zero-padded sufficiently to display all available data
(i.e., any format units overlapping the end of data will
display some number of the zero bytes).
Further output by such format strings is replaced by an
equivalent number of spaces. An equivalent number of
spaces is defined as the number of spaces output by an s
conversion character with the same field width and
precision as the original conversion character or
conversion string but with any '+', ' ', '#' conversion
flag characters removed, and referencing a NULL string.
If no format strings are specified, the default display
is very similar to the -x output format (the -x option
causes more space to be used between format units than
in the default output).
EXIT STATUS
hexdump exits 0 on success and > 0 if an error occurred.
CONFORMING TO
The hexdump utility is expected to be IEEE Std 1003.2
("POSIX.2") compatible.
EXAMPLES
Display the input in perusal format:
"%06.6_ao " 12/1 "%3_u "
"\t" "%_p "
"\n"
Implement the -x option:
"%07.7_Ax\n"
"%07.7_ax " 8/2 "%04x " "\n"
MBR Boot Signature example: Highlight the addresses cyan
and the bytes at offsets 510 and 511 green if their
value is 0xAA55, red otherwise.
"%07.7_Ax_L[cyan]\n"
"%07.7_ax_L[cyan] " 8/2 " %04x_L[green:0xAA55@510-511,!red:0xAA55@510-511] " "\n"
COLORS
The output colorization is implemented by
terminal-colors.d(5) functionality. Implicit coloring
can be disabled by an empty file
/etc/terminal-colors.d/hexdump.disable
for the hexdump command or for all tools by
/etc/terminal-colors.d/disable
The user-specific $XDG_CONFIG_HOME/terminal-colors.d or
$HOME/.config/terminal-colors.d overrides the global
setting.
Note that the output colorization may be enabled by
default, and in this case terminal-colors.d directories
do not have to exist yet.
REPORTING BUGS
For bug reports, use the issue tracker at
https://github.com/util-linux/util-linux/issues.
AVAILABILITY
The hexdump command is part of the util-linux package
which can be downloaded from Linux Kernel Archive
<https://www.kernel.org/pub/linux/utils/util-linux/>.
util-linux 2.39.1 2023‐06‐27 HEXDUMP(1)