set -e [ "${DEBUG}" == 'true' ] && set -x # ===== SMTP CONFIGURATIONS 1 ===== SMTPADDRESS='smtp://smtp.gmail.com:465' SMTPFROM='user@gmail.com' SMTPUSER='user' SMTPPASS='pass' ################################################## # Usage: # source ./sendEmail-v1.1.sh # EMAILTO='user1@example.com,user2@example2.org' \ # EMAILSUBJECT="Email Subject" \ # EMAILBODY="Email Body" \ # sendEmail "$@" # GLOBAL Vars: # SMTPADDRESS # SMTPFROM # SMTPUSER # SMTPPASS ################################################## sendEmail() { [ -z "${EMAILTO}" ] || [ -z "${EMAILSUBJECT}" ] || [ -z "${EMAILBODY}" ] && { echo -e "Required variable/s missing!\n";exit 1; } EMAILCONTENT="From: ${SMTPFROM}\nTo: ${EMAILTO}\nSubject: ${EMAILSUBJECT}\nDate: $(date -R)\n\n${EMAILBODY}" RCPTS=$(echo "${EMAILTO}" | tr ',' ' ') CMD="curl -v --ssl-reqd ${SMTPADDRESS} --mail-from ${SMTPFROM} --user \"${SMTPUSER}:${SMTPPASS}\"" # Generate "--mail-rcpt" for multiple recepients for RCPT in ${RCPTS};do CMD="${CMD} --mail-rcpt ${RCPT}" done CMD="${CMD} -T <(echo -e \"${EMAILCONTENT}\")" eval "${CMD}" }