zhousir1991

让开源路人皆知~!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Linux下mail命令附件发送使用技巧

Posted on 2011-03-23 15:12  zhousir1991  阅读(21741)  评论(0编辑  收藏  举报

这几天由于经常远程到一个Linux主机上处理东西,然后会生成一些文件,所以想把这些东西通过邮件附件的形式给自己发回来,于是好好研究了下Linux中的mail命令,其中参考了一些网友的经验:

1. 例如最简单的一个:

 mail -s text zhousir1991@gmail.com

这条命令的结果是发一封标题为text的空信给后面的邮箱,但是往往这类邮件会被当成垃圾邮件来处理,所以如果没有收到邮件,建议打开垃圾箱来查看一下。

第一种方法,你可以把当前shell当成编辑器来用,编辑完内容后Ctrl-D结束

2. 第二个例子:

echo “This is a test mail!”|mail -s text zhousir1991@gmail.com#第二种方法,使用管道命令。

mail -s test zhousir1991@gmail.com < file

第三种方法,以file的内容为邮件内容发信,这个我个人现在用的比较多,因为在终端中写东西毕竟不是很方便,所以我还是会首先选择事先写好一个文档然后再mail过去。

 3. 带附件的邮件发送(这是我想重点介绍的一个东西)

 如果你的系统中没有uuencode命令的话,并且你已经配好了yum仓库;(yum仓库配置可以参看我的其他文档:http://www.cnblogs.com/zhousir1991/archive/2011/03/05/1971879.html)请先安装sharutils  (yum install sharutils)

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

 uuencode /home/zhousir/httpd.conf httpd.conf|mail -s mailtest zhousir1991@gmail.com

tar czf - /home/zhousir/ | uuencode home.tgz |mail -s mailtest zhousir1991@gmail.com

 ps: slackware下的mail好像有一个-a参数,可以直接添加附件,我没有用过。

转自:http://www.svn8.com/linux/accidence/20091016/10858.html

LinuxMail命令收集:

“/var/spool/mail/[linux用户名]”文件中。
linux中输入mail,就进行了收件箱,并显示二十封邮件列表。

此时命令提示符为"&"
unread
标记为未读邮件

h|headers
显示当前的邮件列表
l|list
显示当前支持的命令列表
?|help
显示多个查看邮件列表的命令参数用法
d
删除当前邮件,指针并下移。 d 1-100 删除第1100封邮件
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,退出阅读状态。