利用Curl命令来发邮件的小工具

一个利用curl来发送邮件的小工具

  • 其实可以扩展出很多其它玩法
  • 例如:
    • 配合系统定时任务做系统状态监控,当满足一定条件自动发送邮件
    • 或者和笔者一样,每次加班后懒得编辑邮件,就可以直接传入相应的参数来发邮件
    • 或者...其它可能需要发邮件的场景
  • 字段解释
    • USER:邮箱帐号名称及密码,中间使用英文冒号:做分割
    • From: 邮件源至
    • To:邮件目标
    • Cc:抄送目标
    • Subject...:如果你不想邮件发过去是乱码的话,就不要改动
    • hi,all...:从这里开始就是邮件内容了
  • 案例中的邮箱地址均为演示使用,使用时需要将其替换
bash 复制代码
#!/bin/bash

NAME="萝呗"
#帐号名:密码
USER="luobei@qq.com:lb123123"
CUR_DATE=`date  | awk '{print $1$2$3" "$4}'`
#加班时长
HOUR=${1}
#加班原因
CAUSE=${2}

echo \
"From: <luobei@qq.com>
To: <kaoqin@qq.com>
Cc: <kaoqin@qq.com>
Subject:=?utf-8?utf-8?加班申请-${NAME}?=
Content-Type: text/plain; charset="utf-8"
ontent-Transfer-Encoding:8bit

hi,all:
    ${CUR_DATE}  加班${HOUR}小时(${CAUSE})

" > ./mail.txt

curl -vs --url "smtps://smtp.exmail.qq.com:465" \
--mail-from "luobei@qq.com" \
--mail-rcpt "kaoqin@qq.com" \
--mail-rcpt "kaoqin@qq.com" \
--upload-file mail.txt \
--user ${USER}