Monday, June 16, 2008

od - dump files in octal and other formats

NAME

od - dump files in octal and other formats

SYNOPSIS

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

DESCRIPTION

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.

All arguments to long options are mandatory for short options.

-A, --address-radix=RADIX
decide how file offsets are printed
-j, --skip-bytes=BYTES
skip BYTES input bytes first
-N, --read-bytes=BYTES
limit dump to BYTES input bytes
-s, --strings[=BYTES]
output strings of at least BYTES graphic chars
-t, --format=TYPE
select output format or formats
-v, --output-duplicates
do not use * to mark line suppression
-w, --width[=BYTES]
output BYTES bytes per output line
--traditional
accept arguments in traditional form
--help
display this help and exit
--version
output version information and exit

Traditional format specifications may be intermixed; they accumulate:

-a
same as -t a, select named characters
-b
same as -t oC, select octal bytes
-c
same as -t c, select ASCII characters or backslash escapes
-d
same as -t u2, select unsigned decimal shorts
-f
same as -t fF, select floats
-h
same as -t x2, select hexadecimal shorts
-i
same as -t d2, select decimal shorts
-l
same as -t d4, select decimal longs
-o
same as -t o2, select octal shorts
-x
same as -t x2, select hexadecimal shorts

For older syntax (second call format), OFFSET 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.

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

a
named character
c
ASCII character or backslash escape
d[SIZE]
signed decimal, SIZE bytes per integer
f[SIZE]
floating point, SIZE bytes per integer
o[SIZE]
octal, SIZE bytes per integer
u[SIZE]
unsigned decimal, SIZE bytes per integer
x[SIZE]
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).

RADIX is d for decimal, o for octal, x for hexadecimal or n for none. BYTES is hexadecimal with 0x or 0X prefix, it is multiplied by 512 with b suffix, by 1024 with k and by 1048576 with m. Adding a z suffix to any type adds a display of printable characters to the end of each line of output. --string without a number implies 3. --width without a number implies 32. By default, od uses -A o -t d2 -w 16.