UUENCODE(1C)

NAME
uuencode, uudecode - encode a binary file, or decode its ASCII representation

SYNOPSIS
uuencode [ source-file ] file-label

uudecode [ encoded-file ]

DESCRIPTION
uuencode converts a binary file into an ASCII-encoded representation that can be sent using mail(1). It encodes the contents of source-file, or the standard input if no source-file argument is given. The file-label argument is required. It is included in the encoded file's header as the name of the file into which uudecode is to place the binary (decoded) data. uuencode also includes the ownership and permission modes of source-file, so that file-label is recreated with those same ownership and permission modes.

If the remote host is a UNIX system with the sendmail(8) mail-message delivery daemon, you can pipe the output of uuencode through mail(1) to the recipient named decode on the remote host. This recipient is typically an alias for the uudecode program (see aliases(5) for details), which allows a binary file to be decoded (extracted) from a mail message automatically. If this alias is absent on a particular host, the encoded file can be mailed to a user, who can run it through uudecode manually.

uudecode reads an encoded-file, strips off any leading and trailing lines added by mailer programs, and recreates the original binary data with the filename and the mode and owner specified in the header.

The encoded file is an ordinary ASCII text file; it can be edited by any text editor. But it is best only to change the mode or file-label in the header to avoid corrupting the decoded binary.

SEE ALSO
mail(1), uucp(1C), uusend(1C), uux(1C), aliases(5), uuencode(5), sendmail(8)

BUGS
The encoded file's size is expanded by 35% (3 bytes become 4, plus control information), causing it to take longer to transmit than the equivalent binary.

The user on the remote system who is invoking uudecode (typically uucp) must have write permission on the file specified in the file-label.

Since both uuencode and uudecode run with user ID set to uucp, uudecode can fail with ``permission denied'' when attempted in a directory that does not have write permission allowed for ``other.''