04-26-2005
Sending email with text & attachment using mailx
I spent some time working this out, with a little help from various forums, and thought the community would like to know :
Here is how you can send an email from a single Unix command line :
/usr/bin/echo "Email text\nNew line\nAnother new line" >x | uuencode sourcefile.txt sourcefile.txt | cat x - | mailx -s "Email subject" -r "reply@to.com" "recipient@company.com"
Breakdown :
- /usr/bin/echo : I use /usr/bin/echo because it consistently handles embedded control characters like \n (newline)
- >x : The echoed text is saved in file "x" for use by "cat"
- uuencode : This takes the file and generates it as a MIME-encoded attachment. The output (encoded file) is piped to "cat"
- cat : Concatenates the echoed text to the encoded file. Cat takes the contents of file "x", appends the output from uuencode and pipes them to "mailx"
- mailx : Sends the email. -s is the subject text, -r is the reply-to email address, followed by the recipient's email address. The contents of the email come from the output of "cat"
This command does leave behind a file called "x". You may want to delete this file later. You could save it in /var/tmp, if the contents aren't sensitive.
This works for me on Solaris (SunOS 5.6). I believe it should be fairly portable to other environments.
If you want to include HTML in the text part of the email, you can include "Content-Type: text/html" in the echoed text, followed by your HTML code.
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
Hi, I am trying to include a message along with an attachment with an email using mailx on AIX.
uuencode Test.dat Test.dat| mailx -s 'Testing' mymail@yahoo.com < MESGFILE
This only gives me the contents of MESGFILE as my message.
If I remove the < FILE I recieve the attachment.
What... (4 Replies)
Discussion started by: edog
4 Replies
2. Shell Programming and Scripting
Hi,
I have tried to sent a mail with body and attachment. But the shell script got hanging while executing that command. The command is
"(cat body;uuencode att1.csv)|mailx -s "Production Monitoring Report(Unix Side)" milton.yesusundaram@patni.com"
where body is a file having a single line.... (2 Replies)
Discussion started by: miltony
2 Replies
3. Shell Programming and Scripting
Hi All,
I am trying to send a mail with an attachment and message. Following command I am using.
(cat <messagefile> ; uuencode <attachmentfile> <attachmentfile>)|mailx -s"Subject" dave@email.com
In the received mail, message body is appearing fine. But attachment is not coming. Rather... (2 Replies)
Discussion started by: nihar.dutta
2 Replies
4. Shell Programming and Scripting
Hi
I want to sent attachment file which is 400mb size.(single file, not tar file)
is there any way that these kind of large files can be divided into small sizes and sent as attachments
thanks with anticipation (3 Replies)
Discussion started by: karthikn7974
3 Replies
5. Shell Programming and Scripting
As a part of requirement I need to send out mails with attachment from UNIX. I have to take query the Oracle DB and send the result of the query in an attachment through mail.
I use the following script for the same.
#!/bin/csh
#!/bin/bash
#!/bin/ksh
ATTFILE=/folder1/test.xls
cd... (1 Reply)
Discussion started by: Sgiri1
1 Replies
6. Shell Programming and Scripting
Hi,
I want to send an email with multiple attachment using uuencode and mail command.
I am able to send with one attachment
Ex:uuencode abc.txt abc.txt | mail test@test.com -s "Test3"
Can anyone reply with syntax.
Regards
BS (3 Replies)
Discussion started by: balajiora
3 Replies
7. Shell Programming and Scripting
Hi,
We have been trying to send mail with attachment and it is going fine, but when we try to attach a text to the body of the email, we find that the mail is going fine with the body text but the attachment is not going through. We are using ksh.
The command that is successfull without the... (6 Replies)
Discussion started by: jmathew99
6 Replies
8. Shell Programming and Scripting
Hi,
Please help me in sending an e-mail with attachment through unix
mailx command is not present in our unix box. (4 Replies)
Discussion started by: dudd9
4 Replies
9. Shell Programming and Scripting
Hi,
I am trying to send email with attachment using mailx command. I am using the folowing command:
uuencode XX_HWSW_BUYERWISE_88963631_1.xls XX_HWSW_BUYERWISE_88963631_1.xls | mailx -s "Test Mail as Attachment" oracleams@xyz.com
I get the email in the inbox. However, when I try to open the... (5 Replies)
Discussion started by: asp_julius
5 Replies
10. UNIX for Beginners Questions & Answers
Hello, I am new to the Unix thing, and I am having trouble sending attachments via shell client putty through mailx.
The command I use is
$ mailx -s "Subject" user@blah.com < attachment.txt
but everytime I do that it would say Cannot open attachment.txt
I have the file save to my computer... (5 Replies)
Discussion started by: mrobin20
5 Replies
LEARN ABOUT DEBIAN
xdg-email
XDG-EMAIL(1) xdg-email Manual XDG-EMAIL(1)
NAME
xdg-email - command line tool for sending mail using the user's preferred e-mail composer
SYNOPSIS
xdg-email [--utf8] [--cc address] [--bcc address] [--subject text] [--body text] [--attach file] [mailto-uri | address(es)]
xdg-email {--help | --manual | --version}
DESCRIPTION
xdg-email opens the user's preferred e-mail composer in order to send a mail to address(es) or mailto-uri. RFC2368 defines mailto: URIs.
xdg-email limits support to, cc, subject and body fields in mailto-uri, all other fields are silently ignored. address(es) must follow the
syntax of RFC822. Multiple addresses may be provided as separate arguments.
All information provided on the command line is used to prefill corresponding fields in the user's e-mail composer. The user will have the
opportunity to change any of this information before actually sending the e-mail.
xdg-email is for use inside a desktop session only. It is not recommended to use xdg-email as root.
See http://portland.freedesktop.org/wiki/EmailConfig for information on how the user can change the e-mail composer that is used.
OPTIONS
--utf8
Indicates that all command line options that follow are in utf8. Without this option, command line options are expected to be encoded
according to locale. If the locale already specifies utf8 this option has no effect. This option does not affect mailto URIs that are
passed on the command line.
--cc address
Specify a recipient to be copied on the e-mail.
--bcc address
Specify a recipient to be blindly copied on the e-mail.
--subject text
Specify a subject for the e-mail.
--body text
Specify a body for the e-mail. Since the user will be able to make changes before actually sending the e-mail, this can be used to
provide the user with a template for the e-mail. text may contain linebreaks.
--attach file
Specify an attachment for the e-mail. file must point to an existing file.
Some e-mail applications require the file to remain present after xdg-email returns.
--help
Show command synopsis.
--manual
Show this manual page.
--version
Show the xdg-utils version information.
ENVIRONMENT VARIABLES
xdg-email honours the following environment variables:
XDG_UTILS_DEBUG_LEVEL
Setting this environment variable to a non-zero numerical value makes xdg-email do more verbose reporting on stderr. Setting a higher
value increases the verbosity.
EXIT CODES
An exit code of 0 indicates success while a non-zero exit code indicates failure. The following failure codes can be returned:
1
Error in command line syntax.
2
One of the files passed on the command line did not exist.
3
A required tool could not be found.
4
The action failed.
5
No permission to read one of the files passed on the command line.
CONFIGURATION
Visit http://portland.freedesktop.org/wiki/EmailConfig for information how to configure xdg-email to use the email client of your choice.
EXAMPLES
xdg-email 'Jeremy White <jwhite@example.com>'
xdg-email --attach /tmp/logo.png
--subject 'Logo contest'
--body 'Attached you find the logo for the contest.'
'jwhite@example.com'
xdg-email --subject 'Your password is about to expire'
'jwhite@example.com' 'bastian@example.com' 'whipple@example.com'
AUTHORS
Kevin Krammer
Author.
Jeremy White
Author.
COPYRIGHT
Copyright (C) 2006
xdg-utils 1.0 08/18/2014 XDG-EMAIL(1)