=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/hexdump/od.1,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- src/usr.bin/hexdump/od.1 2000/03/11 21:40:07 1.8 +++ src/usr.bin/hexdump/od.1 2001/12/30 08:17:32 1.9 @@ -1,8 +1,12 @@ -.\" $OpenBSD: od.1,v 1.8 2000/03/11 21:40:07 aaron Exp $ +.\" $OpenBSD: od.1,v 1.9 2001/12/30 08:17:32 pvalchev Exp $ +.\" $NetBSD: od.1,v 1.16 2001/12/07 01:23:42 bjh21 Exp $ .\" -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 2001 The NetBSD Foundation, Inc. .\" All rights reserved. .\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Andrew Brown. +.\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: @@ -13,27 +17,25 @@ .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: -.\" This product includes software developed by the University of -.\" California, Berkeley and its contributors. -.\" 4. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. +.\" This product includes software developed by the NetBSD +.\" Foundation, Inc. and its contributors. +.\" 4. Neither the name of The NetBSD Foundation nor the names of its +.\" contributors may be used to endorse or promote products derived +.\" from this software without specific prior written permission. .\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" from: @(#)od.1 5.7 (Berkeley) 7/22/91 -.\" -.Dd July 27, 1991 +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\"/ +.Dd February 9, 2001 .Dt OD 1 .Os .Sh NAME @@ -42,24 +44,33 @@ .Sh SYNOPSIS .Nm od .Op Fl aBbcDdeFfHhIiLlOovXx +.Bk -words +.Op Fl j Ar skip +.Ek +.Bk -words +.Op Fl N Ar length +.Ek +.Bk -words +.Op Fl t Ar type_string +.Ek .Sm off .Oo .Op Cm \&+ .Li offset .Op Cm \&. .Op Cm Bb +.Sm on .Oc -.Ar file +.Ar file ... .Sh DESCRIPTION .Nm has been deprecated in favor of .Xr hexdump 1 . .Pp -.Nm hexdump , +.Xr hexdump 1 , if called as .Nm od , -provides compatibility for the options listed above. -.Pp +provides compatibility for the options described below. It does not provide compatibility for the .Fl s option (see @@ -69,11 +80,231 @@ .Fl p , or .Fl w -options, nor is compatibility provided for the -.Dq label -component of the offset syntax. +options, nor is compatibility provided for the ``label'' component +of the offset syntax. +.Pp +The options are as follows: +.Bl -tag -width Fl +.It Fl a +.Em One-byte character display . +Display the input offset in octal, followed by sixteen +space-separated, three column, space-filled, characters of input data +per line. Control characters are printed as their names instead of as +c style escapes. +.It Fl B +Same as +.Fl o . +.It Fl b +.Em One-byte octal display . +Display the input offset in octal, followed by sixteen +space-separated, three column, zero-filled, bytes of input data, in +octal, per line. This is the default output style if no other is +selected. +.It Fl c +.Em One-byte character display . +Display the input offset in octal, followed by sixteen +space-separated, three column, space-filled, characters of input data +per line. Control characters are printed at c style escapes, or as +three octal digits, if no c escape exists for the character. +.It Fl d +.Em Two-byte decimal display . +Display the input offset in octal, followed by eight +space-separated, five column, zero-filled, two-byte units +of input data, in unsigned decimal, per line. +.It Fl e +.Em Eight-byte floating point display . +Display the input offset in octal, followed by two space-separated, +twenty-one column, space filled, eight byte units of input data, in +floating point, per line. +.It Fl F +Same as +.Fl e . +.It Fl f +.Em Four-byte floating point display . +Display the input offset in octal, followed by four space-separated, +14 column, space filled, four byte units of input data, in floating +point, per line. +.It Fl H +.Em Four-byte hex display . +Display the input offset in octal, followed by four space-separated, +eight column, zero filled, four byte units of input data, in hex, +per line. +.It Fl h +.Em Two-byte hex display . +Display the input offset in octal, followed by eight space-separated, +four column, zero filled, two byte units of input data, in hex, +per line. +.It Fl I +.Em Four-byte decimal display . +Display the input offset in octal, followed by four space-separated, +eleven column, space filled, four byte units of input data, in +decimal, per line. +.It Fl i +.Em Two-byte decimal display . +Display the input offset in octal, followed by eight space-separated, +six column, space filled, two-byte units of input data, in decimal, +per line. +.It Fl j Ar offset +Skip +.Ar offset +bytes from the beginning of the input. +By default, +.Ar offset +is interpreted as a decimal number. +With a leading +.Cm 0x +or +.Cm 0X , +.Ar offset +is interpreted as a hexadecimal number, +otherwise, with a leading +.Cm 0 , +.Ar offset +is interpreted as an octal number. +Appending the character +.Cm b , +.Cm k , +or +.Cm m +to +.Ar offset +causes it to be interpreted as a multiple of +.Li 512 , +.Li 1024 , +or +.Li 1048576 , +respectively. +.It Fl L +Same as +.Fl I . +.It Fl l +Same as +.Fl I . +.It Fl N Ar length +Interpret only +.Ar length +bytes of input. +.It Fl O +.Em Four-byte octal display . +Display the input offset in octal, followed by four +space-separated, eleven column, zero-filled, four-byte units +of input data, in octal, per line. +.It Fl o +.Em Two-byte octal display . +Display the input offset in octal, followed by eight +space-separated, six column, zero-filled, two-byte units +of input data, in octal, per line. +.It Fl t Ar type_string +Specify one or more output types. The +.Em type_string +option-argument must be a string specifying the types to be used when +writing the input data. The string must consist of the type +specification characters: +.Pp +.Cm a +selects US-ASCII output, with control characters replaced with their +names instead of as c escape sequences. See also the +.Cm _u +conversion provided by hexdump(1). +.Pp +.Cm c +selects a standard character based conversion. See also the +.Cm _c +conversion provided by hexdump(1). +.Pp +.Cm f +selects the floating point output format. This type character can be +optionally followed by the characters +.Cm 4 +or +.Cm F +to specify four byte floating point output, or +.Cm 8 +or +.Cm L +to specify eight byte floating point output. The default output +format is eight byte floats. See also the +.Cm e +conversion provided by hexdump(1). +.Pp +.Cm d , +.Cm o , +.Cm u , +or +.Cm x +select decimal, octal, unsigned decimal, or hex output respectively. +These types can optionally be followed by +.Cm C +to specify +.Em char Ns -sized +output, +.Cm S +to specify +.Em short Ns -sized +output, +.Cm I +to specify +.Em int Ns -sized +output, +.Cm L +to specify +.Em long Ns -sized +output, +.Cm 1 +to specify one-byte output, +.Cm 2 +to specify two-byte output, +.Cm 4 +to specify four-byte output, or +.Cm 8 +to specify eight-byte output. The default output format is in +four-byte quantities. See also the +.Cm d , +.Cm o , +.Cm u , +and +.Cm x +conversions provided by hexdump(1). +.\"(a|c|f[FLD]?|[doux][C1S2I4L8]?)* +.It Fl v +The +.Fl v +option causes +.Nm +to display all input data. +Without the +.Fl 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 comprised of a +single asterisk. +.It Fl X +Same as +.Fl H . +.It Fl x +Same as +.Fl h . +.El +.Pp +For each input file, +.Nm +sequentially copies the input to standard output, transforming the +data according to the options given. If no options are specified, the +default display is equivalent to specifying the +.Fl o +option. +.Pp +.Nm +exits 0 on success and >0 if an error occurred. .Sh SEE ALSO .Xr hexdump 1 , .Xr strings 1 -.Sh BUGS -Quite a few. +.Sh HISTORY +A +.Nm +command appears in +.At v1 . +.Pp +This man page was written in February 2001 by Andrew Brown, shortly +after he augmented the deprecated od syntax to include things he felt +had been missing for a long time.