Linux发邮件之mail命令详解
程序员文章站
2022-06-13 14:49:09
一、mail命令
1.配置
vim /etc/mail.rc
文件尾增加以下内容
set from=1968089885@qq.com smt...
一、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]$
说明:建议直接使用命令 ,有脚本只是为了在打印显示相关信息,多此一举。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。