linux 定时任务crontab发送邮件mailx

第一步:下载邮件  

 yum install mailx

安装过程中有提示,直接回车即可。

第二步:编辑 /etc/mail.rc

vim /etc/mail.rc

 设置一些参数,此处用163邮箱,先注册163邮箱,并进入设置里设置勾选POP3 / SMTP与IMAP / SMTP选项,并设置自己的授权码。

set from=123456@qq.com
set smtp=smtp.qq.com  
set smtp-auth-user=123456@qq.com
set smtp-auth-password=qwerasdfzxcv
set smtp-auth=login 

解释参数:

set from = 163邮箱地址
设置smtp = smtp.163.com#此处不做改变
设置smtp-auth-user = 163邮箱地址#与从一致即可设置
设置smtp-auth-password =设置的授权码  
设置smtp-auth =登录#默认登录即可

:WQ保存退出

  • 值得注意的是配置时“=”两侧不要有空格
  • 同时在163邮箱设置白名单,以防不测

三:测试

echo“测试文字”| mail -s“邮件主题”986331396@qq.com(收件地址)

如 :

echo "TEST" | mail -s "magang-two" 986331396@qq.com

即发送成功,可能邮件在垃圾件里,注意一下。也可在QQ邮箱里设置白名单,以防拦截。

1. 无邮件正文发送情况

mail -s "主题"  收件地址
echo  "内容" | mail -s "主题" 收件地址

2. 有邮件正文:

 mail -s "主题" 收件地址<文件
 echo "邮件正文" | mail -s 邮件主题 收件地址
 cat "邮件正文" | mail -s 邮件主题 收件地址

3. 带附件

  mail -s "主题" 收件地址  -a 附件 <文件地址

四、补充:

放在定时任务crontab中执行:

crontab -e

添加如下代码(一分钟执行一次,完整时间,指定文件夹下前十条,返回指定列,发送到xxx@xxx.com): 

*/1 * * * * ls -lt --full-time /root/abc | head -n 11 | awk '{print$6,$7,$9}' | mail -s "主题" 123456@qq.com

说明:

不使用crontab自带的MAILTO="",是因为MAILTO默认使用postfix匿名发送。postfix的配置不直观,麻烦
互联网中发送需要经过邮件服务器,需要指定认证。否则
匿名的大概率会被拦截!!! 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值