Unix-to-Unix Encode (Uuencode) is a utility for encoding and decoding binary files to allow them to be sent between computers.
Uuencode was originally developed to facilitate Unix-to-Unix file transfer over the UUCP mail system, but was later also made available for use on all operating systems as an encoding and decoding utility. While Uuencode is still a supported encoding scheme, it has been largely replaced by MIME and yEnc which both make the transfer of binary files much simpler.
Prior to 1996, all email sent using SMTP could only contain ASCII text. In order to send any non-text, binary file content, such as an image or a formatted document, it was necessary to manually convert the binary content into ASCII text, a process known as encoding, and to send the resulting encoded ASCII text to the recipient. Uuencode is an application that could be used to manually encode binary content into ASCII text.
Once the encoded text was received in an email, the encoded ASCII text had to be manually decoded. Once again, Uuencode is a utility that could be used to manually decode encoded ASCII text. Once the text was decoded, the recipient would be able to open the restored binary file using an application compatible with the binary file format.
The need for manual encoding was overcome by the release of the MIME standard in 1996. Most modern email systems use MIME, which allows attachments to be emailed without requiring manual encoding. With MIME, binary content is automatically encoded by the email client when the email is sent and automatically decoded by the recipient's client, thus eliminating the need for a manual encoding utility such as Uuencode.
Frequently Asked Questions
Is Uuencode still used?
While the Uuencode utility is only used on very rare occasion by technology enthusiasts, uuencoding – the form of encoding created by Uuencode – is still used by some legacy computer systems, especially those running a Unix-like operating system. In addition, some popular programming languages such as Python and Perl support uuencoding, and can be used to encode and decode binary content.
If you happen to need to uuencode or uudecode a binary file, a free web application is available that can do the work for you.
Was uuencoding used for things other than transferring email attachments?
In the early days of Usenet, binary content could not be posted to newsgroups in its native format. All content had to be encoded in the ASCII character set. As a result, when users want to post binary content to a newsgroup, encode it in a supported format. Uuencode was commonly used to encode binary files to be posted on Usenet and then used to decode binary content downloaded from Usenet. Once the MIME standard was released in 1996 it became much easier to post files to a newsgroup, and the use of Uuencode began to decline.