linux mail命令直接发送邮箱方法

mail命令在linux是与在php中一样可以用来发送邮件了,但是mail函数是需要简单的配置才可以实现邮件发送哦,下面我一起来看看。

mail配置

配置新版mailx使用外部邮箱发送邮件:

 
编辑/etc/nail.rc(注意不是旧版的/etc/mail.rc):vi /etc/nail.rc
 
添加两行:
 
set from=myname@qq.com smtp=smtp.qq.com
set smtp-auth-user=myname smtp-auth-password=password smtp-auth=login
在Linux系统下mail命令的测试

1. 最简单的一个例子:

 mail -s test yangfang@fudan.edu.cn

这条命令的结果是发一封标题为test的空信给后面的邮箱,如果你有mta并且后面的邮箱不会挡这种可能莫名奇妙的信的时候,就能收到这封信了。如果你不想被这种乱七八糟的事情干扰,后面的邮箱请使用本地帐户。
2. 第二个例子:

 三种常用格式发信

mail -s test yangfang@fudan.edu.cn #第一种方法,你可以把当前shell当成编辑器来用,编辑完内容后Ctrl-D结束

echo “mail content”|mail -s test yangfang@fudan.edu.cn #第二种方法,我用的最多,可能是喜欢管道的缘故吧

mail -s test yangfang@fudan.edu.cn < file #第三种方法,以file的内容为邮件内容发信

 其实你很容易发现mail从标准输入读取文件内容并发信,我也只想让你知道这一点,到此,第二个例子结束。

 3. 第三个例子,带附件的邮件

 如果你的系统里没有uuencode命令的话,请先安装sharutils(yum install sharutils)

 uuencode 需要两个参数,第一个是你要发送的文件(们),当然这个也可以用管道来做,第二个是显示的文件名

 uuencode /home/yfang/a.gif a.gif|mail -s pictest yangfang@fudan.edu.cn

tar czf - /home/yfang/ | uuencode home.tgz |mail -s pictest yangfang@fudan.edu.cn

 ps: 顺便补一句,slackware下的mail好像有一个-a参数,可以直接添加附件,我没有用过。
在linux中输入mail,就进行了收件箱,并显示二十封邮件列表。

此时命令提示符为"&"
unread 标记为未读邮件
h|headers 显示当前的邮件列表
l|list 显示当前支持的命令列表
?|help 显示多个查看邮件列表的命令参数用法
d 删除当前邮件,指针并下移。 d 1-100 删除第1到100封邮件
f|from 只显示当前邮件的简易信息。 f num 显示某一个邮件的简易信息
f|from num 指针移动到某一封邮件
z 显示刚进行收件箱时的后面二十封邮件列表
more|p|page 阅读当前指针所在的邮件内容 阅读时,按空格键就是翻页,按回车键就是下移一行
t|type|more|p|page num 阅读某一封邮件
n|next|{什么都不填} 阅读当前指针所在的下一封邮件内容
     阅读时,按空格键就是翻页,按回车键就是下移一行
v|visual 当前邮件进入纯文本编辑模式
n|next|{什么都不填} num 阅读某一封邮件
top 显示当前指针所在的邮件的邮件头
file|folder 显示系统邮件所在的文件,以及邮件总数等信息
x 退出mail命令平台,并不保存之前的操作,比如删除邮件
q 退出mail命令平台,保存之前的操作,比如删除已用d删除的邮件,已阅读邮件会转存到当前用户家目录下的mbox文件中。如果在mbox中删除文件才会彻底删除。
在linux文本命令平台输入 mail -f mbox,就可以看到当前目录下的mbox中的邮件了。
cd 改变当前所在文件夹的位置
写信时,连按两次Ctrl+C键则中断工作,不送此信件。
读信时,按一次Ctrl+C,退出阅读状态。

发邮件慢

一般造成linux系统中用sendmail,然后在php用mail()发送邮件缓慢的原因,是DNS解析慢导致,又常常是因为服务器的hostname不是一个真实可解析的域名。要解决这个问题,只要确保两点:
[*]/etc/mail/local-hosts-names 里的域名都有出现在 /etc/hosts 里;[*]hostname 所用的域名必须是个真实的能解析到的域名;如何修改linux系统的hostname,可以用 hostname --help 命令来看一下使用说明

 

标签: 无
返回文章列表 文章二维码
本页链接的二维码
打赏二维码