Hey quick question – How do I mail files from IBM AIX / HP-UX Unix as attachments from my shell scripts or command line?
If you have mutt email client installed, try the mutt command as described here. If you don’t have the mutt command installed, use the following command to email files as attachment from UNIX command prompt or shell scripts.
Task: Email reports.tar.gz File
Type the uuencode command as follows:
uuencode reports.tar.gz reports.tar.gz | mailx -s "My Report" you@cyberciti.biz
Please note that the file name “reports.tar.gz” appears twice on the uuencode command line. You must use same name twice.
Task: Email new office photo along with text message read from a file
Type the command as follows;
(cat mymessage.txt; uuencode office.jpeg office.jpeg) | mail -s "Subject" you@cyberciti.biz
Task: Send multiple attachments in a single email
Type the command as follows:
$ uuencode r1.tar.gz r1.tar.gz > /tmp/out.mail
$ uuencode r2.tar.gz r3.tar.gz >> /tmp/out.mail
$ uuencode r3.tar.gz r3.tar.gz >> /tmp/out.mail
$ cat email-body.txt >> /tmp/out.mail
$ mail -s "Reports" you@cyberciti.biz < /tmp/out.mail
See also:
- Use mutt command to send files as mail attachments under Linux / UNIX oses
- Please refer the the “uuencode” man page for more information.
Page last updated at 12:33 AM, April 18, 2012.
🐧 26 comments so far... add one ↓
Category | List of Unix and Linux commands |
---|---|
File Management | cat |
Firewall | Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04 |
Network Utilities | dig • host • ip • nmap |
OpenVPN | CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04 |
Package Manager | apk • apt |
Processes Management | bg • chroot • cron • disown • fg • jobs • killall • kill • pidof • pstree • pwdx • time |
Searching | grep • whereis • which |
User Information | groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w |
WireGuard VPN | Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 |
Hi, the information was quite helpful. I was unable to send an attachement along with mail body. The above combination of cat and mail command helped me.
Thanks,
Thank-you very much… exactly what I needed !
Thank you so much! I’ve been looking for something like this for a long time. I needed to send multiple attachments and was able to make a quick adjustment to do so:
$ uuencode r1.tar.gz r1.tar.gz > /tmp/out.mail
$ uuencode r2.tar.gz r3.tar.gz >> /tmp/out.mail
$ uuencode r3.tar.gz r3.tar.gz >> /tmp/out.mail
$ cat email.txt >> /tmp/out.mail
$ mail -s “Reports” user@my.somewhere.com < /tmp/out.mail
Jakki,
The faq has been updated to include your cat command.
hai,
while using uuencode i get some junk value in mail
Let me know why this is happening….
Hi every one,
Please, anybory knows how i send a e-mail with a attached file not on the body of e-mail, but like a file.txt.
Command:
uuencode /tmp/test teste.txt | sendmail -v e-mail_adress
With the above command it worked, but the command elm doesn´t send de attached file.
Tks,
Hey,
You can use the command
uuencode /tmp/test teste.txt | sendmail -f -v -t
Thnx.
Hey use below command..
uuencode /tmp/test teste.txt | sendmail -f mail_address -v -t
I dont know how my comment hasnt come properly earlier,..
How to send the mail from AIX server to yahoo / gmail id.
$ (uuencode r1.tar.gz r1.tar.gz && uuencode r2.tar.gz r2.tar.gz && uuencode r3.tar.gz r3.tar.gz) | mail -s “Subject” user@my.somewhere.com
Task: Send multiple attachments in a single email
Or try this;
$ (cat email-body.txt; uuencode r1.tar.gz r1.tar.gz && uuencode r2.tar.gz r2.tar.gz && uuencode r3.tar.gz r3.tar.gz) | mail -s "Subject" user@my.somewhere.com
Enjoy
How do I put in the reply-to and change the origination email using this mail command. The multiple attachments works great!
Thanks,
Vasanthi
Doesn’t work for me Only one file get attached to email properly and others are displayed with junk char’s
Thanks
Excelent
i tried with
(uuencode r1.tar.gz r1.tar.gz && uuencode r2.tar.gz r2.tar.gz && uuencode r3.tar.gz r3.tar.gz) | mail -s “Subject” user@my.somewhere.com
It worked
If you are getting junk characters in your e-mail rather than an attachment, check to see if the text file you cat has a carriage return/new line at the end. If not uuencode does not seem to handle it properly.
send maill with body multiple attachment and cc list
cat mail_body.doc > out.mail
uuencode file1 rename_file1 >> out.mail
uuencode file2 rename_file2 >> out.mail
echo ‘~c cc@hotmail.com‘ >> out.mail
mailx -s “Reports” $TO < out.mail
it really works ~~
What if I want to send it to a dynamic list of users, instead of always hardcoding the recipient’s email address in there ?
This above command holds good for tar files and what about if we have to send a csv file
Thank you so much!! I replaced mail with mailx, then it worked in our Solaris box. This is so useful!! Thank you for posting!
I cannot seem to send multiple files using AIX. The body and the first file appear properly, however the subsequent attachments show up as random text. Is it possible that my OS or Lotus notes can’t seem to process multiple requests? I have tried both the && suggestion and the /tmp/out.mail.
Any thoughts?
$ (cat mymessage.txt; uuencode office.jpeg office.jpeg) | mail -s “Subject” user@my.yahoo.com
Can you please let me know if the file would be attached to the email even if its size is 0, when the above command is used?
file would be attached to the email even if its size is 0,
I want to know if i send any attached file for more than one E-Mail address whether there will be individual copy will be send to each E-Mail address
My requirement is that there is two log files i want to grep specific contents of both the files and save it in a file and then send a mail with the new file as an attachement.
Regards,
Bhupesh
Is it possible to send multiple files using wildcards. I would like to do this.
$ uuencode *.tar.gz *.tar.gz > /tmp/out.mail
Is this possible to use wildcards like ” * ” or ” ? “.
Thanks.
I seem to be getting the email in the inbox but not the attachment. This is the command that I am using.
uuencode reports.tar.gz reports.tar.gz | mailx -s “My Report” you@cyberciti.biz