Attach files to email via command line

This is a pretty simple thing to do, once you’ve figured it out. You attach files using the following syntax:

uuencode filename1 filename2|mail user@domain.name

This will uuencode the file names, then pipe the output to the mail command, and mail to the user.

Share and Enjoy:
  • Twitter
  • del.icio.us
  • Digg
  • Mixx
  • Google Bookmarks
  • LinkedIn
  • Print
  • StumbleUpon

No Trackbacks

3 Comments

  1. How do you attach 2 files ?

    :0)
    Thanks for posting this solution!.

    Posted October 12, 2007 at 6:16 pm | Permalink
  2. hyu

    uuencode f1 f1 > f1.uu
    uuencode f2 f2 > f2.uu
    echo “mail body” > mail.body
    cat mail.body f1.uu f2.uu | mail -s “test e-mail” you.e-mail@address.com

    Posted January 25, 2008 at 4:15 pm | Permalink
  3. aaron

    ummm. i hate to burst your bubble but..

    nobody in this day/age should be using uuencode for anything.

    uuencoded attachments will be destroyed going through a large majority of email systems, especially when the mta involves ASCIIEBCDIC gateways, these will sever the 8th bit control codes.

    Theres a good explanation of the problems here:

    http://www.imc.org/ietf-822/old-archive1/msg00290.html

    And seriously. just use mimencode with base64, its understood by nearly every mail client and won’t get clipped by EBCDIC conversion.

    Posted November 21, 2008 at 12:59 am | Permalink