uuencode - format of an encoded uuencode file
Files output by uuencode(1) consist of a header line, followed by a number of
body lines, and a trailer line. The uudecode(1) command will ignore any lines
preceding the header or following the trailer. Lines preceding a header must
not, of course, look like a header.
The header line is distinguished by having the first 5 characters be
followed by a space, or else a hyphen and either base64
or both (also separated with a hyphen). The base64
option says the file has been encoded using base64. The encoded
says the output file name
has been base64 encoded. It is never encoded
with traditional uuencoding. This is a GNU extension. These are followed by a
mode (in octal), and a string which names the remote file. The mode is
separated from the begin
clause and the file name by a single space
The traditional uuencoded
file body consists of a number of lines, each
at most 62 characters long (including the trailing newline). These consist of
a character count letter, followed by the encoded characters, followed by a
newline. The character count is a single printing character, and represents an
integer, the number of bytes the rest of the line represents. Such integers
are always in the range from 0 to 63 and can be determined by subtracting the
character space (octal 40) from the character.
Groups of 3 bytes are stored in 4 characters, 6 bits per character. All are
offset by a space to make the characters printing. The last line may be
shorter than the normal 45 bytes. If the size is not a multiple of 3, this
fact can be determined by the value of the count on the last line. Extra
garbage will be included to make the character count a multiple of 4. The body
is terminated by a line with a count of zero. This line consists of one ASCII
The trailer line consists of end
on a line by itself.
encoded files follow the specified format for the body, but also
include a begin-base64
header and a trailer line of four =
begin-base64-encoded 644 VE9ETw==
This introduces a base64 encoded file named, TODO
with that name encoded
using base64 encoding.
begin-encoded 644 5$]$3P``
This introduces an encoded file named, TODO
with that name encoded using
uuencoding. The encoding is a lot less friendly. Please prefer base64
IEEE Std 1003.1, plus extensions
suffix to the begin
header line is a GNU extension.
Recipients must have the GNU uudecode
program to decode them.
uuencode(1), uudecode(1), base64(1GNU)
file format appeared in BSD 4.0 .