Linux发邮件之mail命令详解
#代码知识 发布时间: 2026-01-11
一、mail命令

1.配置
vim /etc/mail.rc
文件尾增加以下内容
set from=1968089885@qq.com smtp="smtp.qq.com" set smtp-auth-user="1968089885@qq.com" smtp-auth-password="123456" set smtp-auth=login
说明:
from: 对方收到邮件时显示的发件人
smtp: 指定第三方发送邮件的smtp服务器地址
smtp-auth: SMTP的认证方式。默认是LOGIN,也可改为CRAM-MD5或PLAIN方式
smtp-auth-user: 第三方发邮件的用户名
smtp-auth-password: 用户名对应密码
2.Mail命令
% mail --h mail: illegal option -- - Usage: mail -eiIUdEFntBDNHRV~ -T FILE -u USER -h hops -r address -s SUBJECT -a FILE -q FILE -f FILE -A ACCOUNT -b USERS -c USERS -S OPTION users
注:部分系统参数稍有差异,最好看帮助
1) 无邮件正文
mail -s "主题" 收件地址
% mail -s "测试" 1968089885@foxmail.com
2) 有邮件正文
mail -s "主题" 收件地址< 文件(邮件正文.txt)
% mail -s "邮件主题" 1968089885@foxmail.com < /data/findyou.txt
echo "邮件正文" | mail -s 邮件主题 收件地址
% echo "邮件正文内容" | mail -s "邮件主题" 1968089885@foxmail.com
cat 邮件正文.txt | mail -s 邮件主题 收件地址
% cat /data/findyou.txt | mail -s "邮件主题" 1968089885@foxmail.com
3) 带附件
mail -s "主题" 收件地址 -a 附件 < 文件(邮件正文.txt)
% mail -s "邮件主题" 1968089885@foxmail.com -a /data/findyou.tar.gz < /data/findyou.txt
3.脚本
sendmail.sh
#!/bin/bash
#author:findyou
help(){
echo "eg: $0 [Subject] [address] [content_file] [file]"
echo ""
exit 1
}
if [ ! -n "$1" ] ; then
help
fi
cDate=`date +%Y%m%d`
if [ ! -n "$2" ] ; then
help
else
mail_to=$2
echo " Send Mail to ${mail_to}"
fi
if [ ! -n "$4" ] ; then
mail -s $1 ${mail_to}<$3
else
mail -s $1 -a $4 ${mail_to}<$3
fi
使用
[root@123]$ ./sendmail.sh test 1968089885@qq.com abc.txt
Send Mail to 1968089885@qq.com
[root@123]$
说明:建议直接使用命令 ,有脚本只是为了在打印显示相关信息,多此一举。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇 : 常用JS图片滚动(无缝、平滑、上下左右滚动)代码大全(推荐)
下一篇 : 详解windows下mysql的主从同步
-
SEO外包最佳选择国内专业的白帽SEO机构,熟知搜索算法,各行业企业站优化策略!
SEO公司
-
可定制SEO优化套餐基于整站优化与品牌搜索展现,定制个性化营销推广方案!
SEO套餐
-
SEO入门教程多年积累SEO实战案例,从新手到专家,从入门到精通,海量的SEO学习资料!
SEO教程
-
SEO项目资源高质量SEO项目资源,稀缺性外链,优质文案代写,老域名提权,云主机相关配置折扣!
SEO资源
-
SEO快速建站快速搭建符合搜索引擎友好的企业网站,协助备案,域名选择,服务器配置等相关服务!
SEO建站
-
快速搜索引擎优化建议没有任何SEO机构,可以承诺搜索引擎排名的具体位置,如果有,那么请您多注意!专业的SEO机构,一般情况下只能确保目标关键词进入到首页或者前几页,如果您有相关问题,欢迎咨询!