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