Skip to content

Instantly share code, notes, and snippets.

@boscho87
Forked from SBejga/ssmtp_mail_alias
Created August 13, 2018 16:42
Show Gist options
  • Save boscho87/f358b0113d44d77fd117b7495d19786d to your computer and use it in GitHub Desktop.
Save boscho87/f358b0113d44d77fd117b7495d19786d to your computer and use it in GitHub Desktop.
Bash Script as alias of "mail" using "ssmtp" in ubuntu. Main purpose is sending mails via munin by ssmtp instead of postfix.
#!/bin/bash
# mail syntax: mail -s "any mail subject string" any@mail.com
# or: mail "any mail subject string" any@mail.com
if [ $1 == "-s" ]
then
subject=$2
recip=$3
else
subject=$1
recip=$2
fi
# using temporary txt file in /tmp with filename by current date
name=/tmp/$(date '+%s')_ssmtp_mail.txt
# create payload for ssmtp mail
echo "To: $recip" > $name
echo "From: stranged.de@gmail.com" >> $name
echo "Subject: $subject" >> $name
echo "" >> $name
# receive mail payload by stdin line by line
while read line; do
echo "${line}" >> $name
done
# exec ssmtp command with tmp txt file we have created
ssmtp $recip < $name
# remove tmp file again
rm $name
# may need to symlink: ssmtp
# ln -s /usr/sbin/ssmtp /usr/bin/ssmtp
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment