[Script] Send e-mail from bash
|The mail command can be used under Linux or UNIX bash, ksh, csh shell to send an email. To send a message to one or more address, mail can be invoked with arguments which are the names of people to whom the mail will be sent. You are then expected to type in your message, followed by an <control-D> at the beginning of a line. However, using the following syntax one can send email easily:
mail -s ‘Subject’ [email protected]
Script
#!/bin/bash # Subject SUBJECT="EMAIL-SUBJECT" # To TOEMAIL="[email protected]" # Message EMAILMESSAGE="/home/user/message.txt" echo "This is email text" >>$EMAILMESSAGE # Sending email using /bin/mail /bin/mail -s "$SUBJECT" "$TOEMAIL" < $EMAILMESSAGE
7 Comments
better is:
/bin/mail -s "$SUBJECT" "$TOEMAIL" <<END
This is email text
END
and you don’t need any extra file
For a quick test of mailserver, I usually use pipe.
echo "This is a message" | mail -s "$SUBJECT" "$TOEMAIL"
or this if you need send program output:
( echo "foooo" ; ls ; ps ) | /bin/mail -s "$SUBJECT" "$TOEMAIL"
sendmail “$TOEMAIL” <<<"Message"
I want to send an email from a Linux Shell script. What is the standard command to do this and do I need to set up any special server names?
Anybody can help me what is the require for sending mail through bash script.