-b<地址>:指定密件副本的收信人地址;
-c<地址>:指定副本的收信人地址;
-f<邮件文件>:读取指定邮件文件中的邮件;
-i:不显示终端发出的信息;
-I:使用互动模式;
-n:程序使用时,不使用mail.rc文件中的设置;
-N:阅读邮件时,不显示邮件的标题;
-s<邮件主题>:指定邮件的主题;
-u<用户帐号>:读取指定用户的邮件;
-v:执行时,显示详细的信息。
总结如下:
echo "邮件内容“ | mail -s "邮件主题" hqq@domain.com
mail -s "邮件主题" hqq@domain.com <mail.txt
mail.txt 是邮件内容
简化公式
echo {MAIL_SUBJECT} {BACKUP_LOG} 2>&1
1、用的腾讯云服务器,折腾了很多资料,发现改错了。谨记检查端口25开放2、TP框架用PHPMailer 发送邮件,windows本地测试正常,上传到腾讯云linux服务器就发送不成功:
细节如下: [root@VM_82_192_centos ~]# tail -40 /var/log/maillog
把class.phpmailer.php中的$this->mailer = smtp中的smtp换成大写:SMTP。说是因为qq 163等邮箱需要接受发送过来的大写的SMTP
发现还是不成功
反过头来检查25端口:
发现没反应:yum重装sendmail,还是同样。直接杀到云服务器哪儿,检查25端口是否开放;泪流满面:赶紧解封。
确认:
OK,测试发送 mail -s '33333333555ksTest mail' 2848278204@qq.com </etc/passwd
一般来说只要把sendmail的service起起来就可以发内网邮件了方法1 安装sendmail即可使用, mail -s "test" user@sohu.com <content.txt
bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置非常麻烦,而且会带来不必要的资源占用。
方法2。利用外部的smpt服务器
而通过修改配置文件可以使用外部SMTP服务器,可以达到不使用sendmail而用外部的smtp服务器发送邮件的目的:
修改/etc/nail.rc (/etc/mail.rc)
set from=fromUser@domain.com smtp=smtp.domain.comset smtp-auth-user=username smtp-auth-password=passwordset smtp-auth=login
说明:
from是发送的邮件地址
smtp是发生的外部smtp服务器的地址
smtp-auth-user是外部smtp服务器认证的用户名
smtp-auth-password是外部smtp服务器认证的用户密码
smtp-auth是邮件认证的方式
配置成功后,就可以使用了
可以发送一封邮件测试一下:
mail -s "test" username@163.com <content.txt 其中-s后面的是邮件标题,user@sohu.com是收件人地址,content.txt里面是邮件正文
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)