Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
HEXDUMP(1)		  BSD General Commands Manual		    HEXDUMP(1)

     hexdump --	ascii, decimal,	hexadecimal, octal dump

     hexdump [-bcCdovx]	[-e format_string] [-f format_file] [-n	length]
	     [-s skip] file ...

     The hexdump utility is a filter which displays the	specified files, or
     the standard input, if no files are specified, in a user specified	for-

     The options are as	follows:

     -b		 One-byte octal	display.  Display the input offset in hexadec-
		 imal, followed	by sixteen space-separated, three column,
		 zero-filled, bytes of input data, in octal, per line.

     -c		 One-byte character display.  Display the input	offset in
		 hexadecimal, followed by sixteen space-separated, three col-
		 umn, space-filled, characters of input	data per line.

     -C		 Canonical hex+ASCII display.  Display the input offset	in
		 hexadecimal, followed by sixteen space-separated, two column,
		 hexadecimal bytes, followed by	the same sixteen bytes in %_p
		 format	enclosed in ``|'' characters.

     -d		 Two-byte decimal display.  Display the	input offset in	hexa-
		 decimal, followed by eight space-separated, five column,
		 zero-filled, two-byte units of	input data, in unsigned	deci-
		 mal, per line.

     -e	format_string
		 Specify a format string to be used for	displaying data.

     -f	format_file
		 Specify a file	that contains one or more newline separated
		 format	strings.  Empty	lines and lines	whose first non-blank
		 character is a	hash mark (#) are ignored.

     -n	length	 Interpret only	length bytes of	input.

     -o		 Two-byte octal	display.  Display the input offset in hexadec-
		 imal, followed	by eight space-separated, six column, zero-
		 filled, two byte quantities of	input data, in octal, per

     -s	offset	 Skip offset bytes from	the beginning of the input.  By	de-
		 fault,	offset is interpreted as a decimal number.  With a
		 leading 0x or 0X, offset is interpreted as a hexadecimal num-
		 ber, otherwise, with a	leading	0, offset is interpreted as an
		 octal number.	Appending the character	b, k, or m to offset
		 causes	it to be interpreted as	a multiple of 512, 1024, or
		 1048576, respectively.

     -v		 The -v	option causes hexdump to display all input data.
		 Without the -v	option,	any number of groups of	output lines,
		 which would be	identical to the immediately preceding group
		 of output lines (except for the input offsets), are replaced
		 with a	line containing	a single asterisk.

     -x		 Two-byte hexadecimal display.	Display	the input offset in
		 hexadecimal, followed by eight, space separated, four column,
		 zero-filled, two-byte quantities of input data, in hexadeci-
		 mal, per line.

     For each input file, hexdump sequentially copies the input	to standard
     output, transforming the data according to	the format strings specified
     by	the -e and -f options, in the order that they were specified.

     A format string contains any number of format units, separated by white-
     space.  A format unit contains up to three	items: an iteration count, a
     byte count, and a format.

     The iteration count is an optional	positive integer, which	defaults to
     one.  Each	format is applied iteration count times.

     The byte count is an optional positive integer.  If specified it defines
     the number	of bytes to be interpreted by each iteration of	the format.

     If	an iteration count and/or a byte count is specified, a single slash
     must be placed after the iteration	count and/or before the	byte count to
     disambiguate them.	 Any whitespace	before or after	the slash is ignored.

     The format	is required and	must be	surrounded by double quote (" ")
     marks.  It	is interpreted as a fprintf-style format string	(see
     fprintf(3)), with the following exceptions:

	   +o   An asterisk (*) may not be used as a field width	or precision.

	   +o   A byte count or field precision is required for each ``s'' con-
	       version character (unlike the fprintf(3)	default	which prints
	       the entire string if the	precision is unspecified).

	   +o   The conversion characters ``h'',	``l'', ``n'', ``p'' and	``q''
	       are not supported.

	   +o   The single character escape sequences described in the C	stan-
	       dard are	supported:

		     NUL		  \0
		     <alert character>	  \a
		     <backspace>	  \b
		     <form-feed>	  \f
		     <newline>		  \n
		     <carriage return>	  \r
		     <tab>		  \t
		     <vertical tab>	  \v

     Hexdump also supports the following additional conversion strings:

     _a[dox]	 Display the input offset, cumulative across input files, of
		 the next byte to be displayed.	 The appended characters d, o,
		 and x specify the display base	as decimal, octal or hexadeci-
		 mal respectively.

     _A[dox]	 Identical to the _a conversion	string except that it is only
		 performed once, when all of the input data has	been pro-

     _c		 Output	characters in the default character set.  Nonprinting
		 characters are	displayed in three character, zero-padded oc-
		 tal, except for those representable by	standard escape	nota-
		 tion (see above), which are displayed as two character

     _p		 Output	characters in the default character set.  Nonprinting
		 characters are	displayed as a single ".".

     _u		 Output	US ASCII characters, with the exception	that control
		 characters are	displayed using	the following, lower-case,
		 names.	 Characters greater than 0xff, hexadecimal, are	dis-
		 played	as hexadecimal strings.

		 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 sub  01B	esc  01C fs   01D gs
		 01E rs	  01F us   07F del

     The default and supported byte counts for the conversion characters are
     as	follows:

	   %_c,	%_p, %_u, %c	   One byte counts only.

	   %d, %i, %o, %u, %X, %x  Four	byte default, one, two,	four and eight
				   byte	counts supported.

	   %E, %e, %f, %G, %g	   Eight byte default, four byte counts	sup-

     The amount	of data	interpreted by each format string is the sum of	the
     data required by each format unit,	which is the iteration count times the
     byte count, or the	iteration count	times the number of bytes required by
     the format	if the byte count is not 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 it-
     eration 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 be-
     ing reached, input	data only partially satisfies a	format string, the in-
     put 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 referenc-
     ing a NULL	string.

     If	no format strings are specified, the default display is	equivalent to
     specifying	the -x option.

     hexdump exits 0 on	success	and >0 if an error occurred.

     Display the input in perusal format:

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

     Implement the -x option:

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

BSD			       February	27, 2010			   BSD


Want to link to this manual page? Use this URL:

home | help