Unix/Linux Go Back    


NetBSD 6.1.5 - man page for uuencode (netbsd section 5)

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)


UUENCODE(5)			     BSD File Formats Manual			      UUENCODE(5)

NAME
     uuencode -- format of an encoded uuencode file

DESCRIPTION
     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 starts with the word ``begin'', a space, a file mode (in octal), a space,
     and finally a string which names the file being encoded.

     The central engine of uuencode(1) is a six-bit encoding function which outputs an ASCII
     character.  The six bits to be encoded are treated as a small integer and added with the
     ASCII value for the space character (octal 40).  The result is a printable ASCII character.
     In the case where all six bits to be encoded are zero, the ASCII backquote character `
     (octal 140) is emitted instead of what would normally be a space.

     The body of an encoded file consists of one or more lines, each of which may be a maximum of
     86 characters long (including the trailing newline).  Each line represents an encoded chunk
     of data from the input file and begins with a byte count, followed by encoded bytes, fol-
     lowed by a newline.

     The byte count is a six-bit integer encoded with the above function, representing the number
     of bytes encoded in the rest of the line.	The method used to encode the data expands its
     size by 133% (described below).  Therefore it is important to note that the byte count
     describes the size of the chunk of data before it is encoded, not afterwards.  The six bit
     size of this number effectively limits the number of bytes that can be encoded in each line
     to a maximum of 63.  While uuencode(1) will not encode more than 45 bytes per line,
     uudecode(1) will tolerate the maximum line size.

     The remaining characters in the line represent the data of the input file encoded as fol-
     lows.  Input data are broken into groups of three eight-bit bytes, which are then inter-
     preted together as a 24-bit block.  The first bit of the block is the highest order bit of
     the first character, and the last is the lowest order bit of the third character.	This
     block is then broken into four six-bit integers which are encoded one by one starting from
     the first bit of the block.  The result is a four character ASCII string for every three
     bytes of input data.

     Encoded lines of data continue in this manner until the input file is exhausted.  The end of
     the body is signaled by an encoded line with a byte count of zero (the ASCII backquote char-
     acter `).

     Obviously, not every input file will be a multiple of three bytes in size.  In these cases,
     uuencode(1) will pad the remaining one or two bytes of data with garbage bytes until a three
     byte group is created.  The byte count in a line containing garbage padding will reflect the
     actual number of bytes encoded, making it possible to convey how many bytes are garbage.

     The trailer line consists of ``end'' on a line by itself.

SEE ALSO
     mail(1), uucp(1), uudecode(1), uuencode(1), ascii(7)

HISTORY
     The uuencode file format appeared in 4.0BSD.

BUGS
     The interpretation of the uuencode format relies on properties of the ASCII character set
     and may not work correctly on non-ASCII systems.

BSD					  April 9, 1997 				      BSD
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums


All times are GMT -4. The time now is 02:34 AM.