Linux发送邮件

本文介绍了Linux系统下发送邮件的相关内容。首先说明了若没有mail命令,可通过yum -y install postfix安装,还给出了mail命令格式及多个使用示例。此外,讲解了通过配置/etc/mail.rc使用外部邮箱发送邮件的方法,最后提及写定时任务检查服务器状态并发送邮件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux发送邮件命令
mail

如果没有mail命令
yum -y install postfix

如果只是发送邮件不接收邮件的时候postfix不用开启

命令格式
-s <邮件主题>:指定邮件的主题
-c <地址>:添加邮件抄送人,多个人时用逗号隔开
-b <地址>:添加邮件暗送人
-a <附件>: 添加附件

例1:
echo “正文内容”| mail -s “邮件标题” xxxxx@xx.com

例2:
mail -s “邮件标题” xxxxx@xx.com < /etc/hosts
把hosts的内容当做正文内容发送

例3 发送附件
mail -s “邮件标题” -a call.txt xxxxx@xx.com <call.txt

例4 抄送
mail -s “状态” -a call.txt -c yyyyy@xx.com xxxxx@xx.com <call.txt
发送给xxxxx@xx.com 抄送给 yyyyy@xx.com

使用外部邮箱发送邮件
现在很多邮箱服务都有对发送地址进行验证,因此使用外部邮箱可以减少被拦截的情况。
默认是使用本地邮件服务进行发送邮件,通过配置/etc/mail.rc可以使用外部的邮箱来发送邮件。
vim /etc/mail.rc
set from=xxxxx@xx.com smtp=smtp.xx.com smtp-auth-user=xxx smtp-auth-password=xxx smtp-auth=login
在这里插入图片描述

from= 邮箱地址
smtp= smtp服务器地址
smtp-auth-user= 认证用户名
smtp-auth-password= 认证密码
smtp-auth= 认证方式

写了一个定时任务 每周五检查服务器状态 发送邮件

50 17 * * 5 /bin/sh /root/detecting.sh "free -m" > /root/service_$(date +\%F).txt
51 17 * * 5 /bin/sh /root/detecting.sh "df -TH" >> /root/service_$(date +\%F).txt
52 17 * * 5 /bin/sh /root/detecting.sh "uptime" >> /root/service_$(date +\%F).txt
53 17 * * 5 mail -s "service status messages" -a /root/service_$(date +\%F).txt -c  yyyyy@xx.com xxxxx@xx.com< /root/call.txt

注:在计划任务中%需要转义

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值