[BACK]Return to uuencode.1 CVS log [TXT][DIR] Up to [local] / src / usr.bin / uuencode

Annotation of src/usr.bin/uuencode/uuencode.1, Revision 1.20

1.20    ! jmc         1: .\"    $OpenBSD: uuencode.1,v 1.19 2008/07/05 20:59:42 sobrado Exp $
1.14      millert     2: .\"    $FreeBSD: uuencode.1,v 1.26 2003/03/18 14:24:47 fanf Exp $
1.1       deraadt     3: .\"
                      4: .\" Copyright (c) 1980, 1990, 1993
                      5: .\"    The Regents of the University of California.  All rights reserved.
                      6: .\"
                      7: .\" Redistribution and use in source and binary forms, with or without
                      8: .\" modification, are permitted provided that the following conditions
                      9: .\" are met:
                     10: .\" 1. Redistributions of source code must retain the above copyright
                     11: .\"    notice, this list of conditions and the following disclaimer.
                     12: .\" 2. Redistributions in binary form must reproduce the above copyright
                     13: .\"    notice, this list of conditions and the following disclaimer in the
                     14: .\"    documentation and/or other materials provided with the distribution.
1.13      millert    15: .\" 3. Neither the name of the University nor the names of its contributors
1.1       deraadt    16: .\"    may be used to endorse or promote products derived from this software
                     17: .\"    without specific prior written permission.
                     18: .\"
                     19: .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
                     20: .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     21: .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     22: .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     23: .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     24: .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     25: .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     26: .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     27: .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     28: .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     29: .\" SUCH DAMAGE.
                     30: .\"
                     31: .\"     @(#)uuencode.1 8.1 (Berkeley) 6/6/93
1.14      millert    32: .\" $FreeBSD$
1.1       deraadt    33: .\"
1.20    ! jmc        34: .Dd $Mdocdate: July 5 2008 $
1.1       deraadt    35: .Dt UUENCODE 1
1.6       aaron      36: .Os
1.1       deraadt    37: .Sh NAME
                     38: .Nm uuencode ,
1.14      millert    39: .Nm uudecode ,
                     40: .Nm b64encode ,
                     41: .Nm b64decode
1.1       deraadt    42: .Nd encode/decode a binary file
                     43: .Sh SYNOPSIS
                     44: .Nm uuencode
1.14      millert    45: .Op Fl m
                     46: .Op Fl o Ar output_file
1.1       deraadt    47: .Op Ar file
                     48: .Ar name
                     49: .Nm uudecode
1.14      millert    50: .Op Fl cimprs
                     51: .Op Ar
                     52: .Nm uudecode
                     53: .Op Fl i
                     54: .Fl o Ar output_file
1.19      sobrado    55: .Op Ar file
                     56: .Pp
1.14      millert    57: .Nm b64encode
                     58: .Op Fl o Ar output_file
                     59: .Op Ar file
                     60: .Ar name
                     61: .Nm b64decode
                     62: .Op Fl ciprs
                     63: .Op Ar
                     64: .Nm b64decode
                     65: .Op Fl i
                     66: .Fl o Ar output_file
                     67: .Op Ar file
1.1       deraadt    68: .Sh DESCRIPTION
1.14      millert    69: The
1.5       aaron      70: .Nm uuencode
1.1       deraadt    71: and
                     72: .Nm uudecode
1.14      millert    73: utilities are used to transmit binary files over transmission mediums
1.12      hugh       74: that do not support formats other than printable
1.1       deraadt    75: .Tn ASCII
                     76: data.
1.14      millert    77: .Nm b64encode
                     78: and
                     79: .Nm b64decode
                     80: are equivalent to running
                     81: .Nm uuencode
                     82: and
                     83: .Nm uudecode
                     84: respectively with the
                     85: .Fl m
                     86: flag specified.
1.1       deraadt    87: .Pp
1.5       aaron      88: .Nm uuencode
1.1       deraadt    89: reads
                     90: .Ar file
1.5       aaron      91: (or by default, the standard input) and writes an encoded version
1.14      millert    92: to the standard output, or to
                     93: .Ar output_file
                     94: if it has been specified.
1.1       deraadt    95: The encoding uses only printing
                     96: .Tn ASCII
                     97: characters and includes the
                     98: mode of the file and the operand
                     99: .Ar name
                    100: for use by
                    101: .Nm uudecode .
                    102: .Pp
1.5       aaron     103: .Nm uudecode
1.1       deraadt   104: transforms
1.5       aaron     105: .Dq uuencoded
1.1       deraadt   106: files (or by default, the standard input) into the original form.
1.14      millert   107: The resulting file is named either
1.1       deraadt   108: .Ar name
1.14      millert   109: or (depending on options passed to
                    110: .Nm uudecode )
                    111: .Ar output_file
1.5       aaron     112: and will have the mode of the original file except that set-user-ID
1.7       aaron     113: and execute bits are not retained.
1.5       aaron     114: .Nm uudecode
1.1       deraadt   115: ignores any leading and trailing lines.
1.14      millert   116: .Pp
                    117: The options for
                    118: .Nm uuencode
                    119: are as follows:
                    120: .Bl -tag -width ident
                    121: .It Fl m
                    122: Use the Base64 method of encoding, rather than the traditional
                    123: .Nm
                    124: algorithm.
                    125: .It Fl o Ar output_file
                    126: Output to
                    127: .Ar output_file
                    128: instead of standard output.
                    129: .El
                    130: .Pp
                    131: The options for
                    132: .Nm uudecode
                    133: are as follows:
                    134: .Bl -tag -width ident
                    135: .It Fl c
                    136: Decode more than one uuencoded file from
                    137: .Ar file
                    138: if possible.
                    139: .It Fl i
                    140: Do not overwrite files.
                    141: .It Fl m
                    142: When used with the
                    143: .Fl r
                    144: flag, decode Base64 input instead of traditional
                    145: .Nm
                    146: input.
                    147: Without
                    148: .Fl r
                    149: it has no effect.
                    150: .It Fl o Ar output_file
                    151: Output to
                    152: .Ar output_file
                    153: instead of any pathname contained in the input data.
                    154: .It Fl p
                    155: Decode
                    156: .Ar file
                    157: and write output to standard output.
                    158: .It Fl r
                    159: Decode raw (or broken) input which is missing the initial and
                    160: possibly the final framing lines.
                    161: The input is assumed to be in the traditional
                    162: .Nm
                    163: encoding, but if the
                    164: .Fl m
                    165: flag is used, or if the utility is invoked as
                    166: .Nm b64decode ,
                    167: then the input is assumed to be in Base64 format.
                    168: .It Fl s
                    169: Do not strip output pathname to base filename.
                    170: By default
                    171: .Nm uudecode
                    172: deletes any prefix ending with the last slash '/' for security
                    173: reasons.
                    174: .El
1.1       deraadt   175: .Sh EXAMPLES
                    176: The following example packages up a source tree, compresses it,
                    177: uuencodes it and mails it to a user on another system.
                    178: When
                    179: .Nm uudecode
1.7       aaron     180: is run on the target system, the file
                    181: .Pa src_tree.tar.Z
                    182: will be created which may then be uncompressed and extracted
                    183: into the original tree.
1.14      millert   184: .Bd -literal -offset indent
                    185: $ tar cf - src_tree | compress | \e
                    186: uuencode src_tree.tar.Z | mail user@example.com
                    187: .Ed
1.1       deraadt   188: .Pp
1.14      millert   189: The following example unpacks all uuencoded
                    190: files from your mailbox into your current working directory.
                    191: .Bd -literal -offset indent
                    192: $ uudecode -c \*(Lt $MAIL
1.1       deraadt   193: .Ed
1.7       aaron     194: .Pp
1.14      millert   195: The following example extracts a compressed tar
                    196: archive from your mailbox
                    197: .Bd -literal -offset indent
1.16      jmc       198: $ uudecode -o /dev/stdout \*(Lt $MAIL | zcat | tar xfv -
1.14      millert   199: .Ed
1.1       deraadt   200: .Sh SEE ALSO
1.14      millert   201: .Xr basename 1 ,
1.1       deraadt   202: .Xr compress 1 ,
                    203: .Xr mail 1 ,
1.2       deraadt   204: .Xr uuencode 5
1.1       deraadt   205: .Sh STANDARDS
1.6       aaron     206: The
1.1       deraadt   207: .Nm uudecode
                    208: and
                    209: .Nm uuencode
1.17      jmc       210: utilities are compliant with the
                    211: .St -p1003.1-2004
                    212: specification.
                    213: .Pp
                    214: The flags
                    215: .Op Fl ciprs
                    216: are extensions to that specification.
1.20    ! jmc       217: .Pp
        !           218: The use of the
        !           219: .Fl o
        !           220: flag for
        !           221: .Nm uuencode
        !           222: and the
        !           223: .Fl m
        !           224: flag for
        !           225: .Nm uudecode
        !           226: are also extensions to that specification.
1.1       deraadt   227: .Sh HISTORY
                    228: The
                    229: .Nm uudecode
                    230: and
1.14      millert   231: .Nm
1.1       deraadt   232: utilities appeared in
                    233: .Bx 4.0 .
                    234: .Sh BUGS
1.14      millert   235: Files encoded using the traditional algorithm are expanded by 35%
                    236: (3 bytes become 4 plus control information).