Scroll to navigation

OD(1) User Commands OD(1)


od - dump files in octal and other formats


od [OPTION]... [FILE]...
od [-abcdfilosx]... [FILE] [[+]OFFSET[.][b]]
od --traditional [OPTION]... [FILE] [[+]OFFSET[.][b] [+][LABEL][.][b]]


Write an unambiguous representation, octal bytes by default, of FILE to standard output. With more than one FILE argument, concatenate them in the listed order to form the input.

With no FILE, or when FILE is -, read standard input.

If first and second call formats both apply, the second format is assumed if the last operand begins with + or (if there are 2 operands) a digit. An OFFSET operand means -j OFFSET. LABEL is the pseudo-address at first byte printed, incremented when dump is progressing. For OFFSET and LABEL, a 0x or 0X prefix indicates hexadecimal; suffixes may be . for octal and b for multiply by 512.

Mandatory arguments to long options are mandatory for short options too.

-A, --address-radix=RADIX
output format for file offsets; RADIX is one of [doxn], for Decimal, Octal, Hex or None
swap input bytes according the specified order
-j, --skip-bytes=BYTES
skip BYTES input bytes first
-N, --read-bytes=BYTES
limit dump to BYTES input bytes
-S BYTES, --strings[=BYTES]
output strings of at least BYTES graphic chars; 3 is implied when BYTES is not specified
-t, --format=TYPE
select output format or formats
-v, --output-duplicates
do not use * to mark line suppression
-w[BYTES], --width[=BYTES]
output BYTES bytes per output line; 32 is implied when BYTES is not specified
accept arguments in third form above
display this help and exit
output version information and exit

Traditional format specifications may be intermixed; they accumulate:

same as -t a, select named characters, ignoring high-order bit
same as -t o1, select octal bytes
same as -t c, select printable characters or backslash escapes
same as -t u2, select unsigned decimal 2-byte units
same as -t fF, select floats
same as -t dI, select decimal ints
same as -t dL, select decimal longs
same as -t o2, select octal 2-byte units
same as -t d2, select decimal 2-byte units
same as -t x2, select hexadecimal 2-byte units

TYPE is made up of one or more of these specifications:

named character, ignoring high-order bit
printable character or backslash escape
signed decimal, SIZE bytes per integer
floating point, SIZE bytes per float
octal, SIZE bytes per integer
unsigned decimal, SIZE bytes per integer
hexadecimal, SIZE bytes per integer

SIZE is a number. For TYPE in [doux], SIZE may also be C for sizeof(char), S for sizeof(short), I for sizeof(int) or L for sizeof(long). If TYPE is f, SIZE may also be F for sizeof(float), D for sizeof(double) or L for sizeof(long double).

Adding a z suffix to any type displays printable characters at the end of each output line.

BYTES is hex with 0x or 0X prefix, and may have a multiplier suffix:


and so on for G, T, P, E, Z, Y.


od -A x -t x1z -v
Display hexdump format output
od -A o -t oS -w16
The default output format used by od


Written by Jim Meyering.


GNU coreutils online help: <>
Report od translation bugs to <>


Copyright © 2018 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <>.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.


Full documentation at: <>
or available locally via: info '(coreutils) od invocation'
February 2019 GNU coreutils 8.30