博客统计信息

51cto推荐博客
用户名:snailwarrior
文章数:63
评论数:77
访问量:152833
无忧币:101
博客积分:1306
博客等级:5
注册日期:2009-03-02

我的技术圈(0)

更多>>
mail结合uuencode快速发送邮件附件
2009-04-02 11:01:54
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://snailwarrior.blog.51cto.com/680306/145073
【小蜗牛清心之作
 
首先简要说一下uuencode/uudecode编解码:
 
uuencode把二进制文件转化成为可读ASCII文件,适合email传输。编码后的文件比原文件要大35%左右,内容第一行一般是"begin, 644, 文件名",最后一行是"end",中间的内容都以"M"开头,满61字符换行。
 
[root@pps ~]# uuencode snail.jpg snail.jpg
begin 644 snail
M_]C_X``02D9)1@`!`0$`2`!(
``#_VP!#``@&!@<&!0@'!P<)"0@*#!0-#`L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+#`Q-#0T'R<
Y/3@R/"XS-#+_
...
...
M)0$Q]MY$;,0)Y^IK>I0&$<,46_#C1-^?:H&ZSI2@%*4H!2E*`4I2@%*4H!2E
.*`4I2@%*4H!2E*`__]D`
`
end
 
【注意】如果使用-m参数,则使用base64编码格式
 
上面命令行参数第一个snail.jpg是需要编码的文件名,第二个snail.jpg是编码后的文件名(解码时使用)。我们可以重定向文件,对比一下编码前后的大小:
[root@pps ~]# uuencode snail.jpg snail.jpg > snail.jpg.uue
[root@pps ~]# ls -l snail.jpg snail.jpg.uue
-rw-r--r-- 1 root root 2444 03-02 15:09 snail.jpg
-rw-r--r-- 1 root root 3396 04-02 10:17 snail.jpg.uue
 
3396/2444=1.39

新建tmp目录,把snail.jpg.uue拷贝进去,用uudecode对文件解码:
[root@pps tmp]# uudecode snail.jpg.uue
[root@pps tmp]# ls
snail.jpg  snail.jpg.uue
 
解码后的文件名,就是前面编码时输入的第二个"snail.jpg”参数,文件的权限为644,也就是编码时默认的644。
 
好了,下面举例说说用mail命令结合uuencode快速发送email附件:
[root@pps software]# ls -lh jdk-6u12-linux-i586.bin
-rwxr-xr-x 1 root root 77M 01-21 04:35 jdk-6u12-linux-i586.bin
[root@pps software]# uuencode jdk-6u12-linux-i586.bin jdk-6u12-linux-i586.bin | mail -s "Big Attachement" hoho@hoho.com
 
是不是很简单?这里发了一封主题为“Big Attachement”的邮件,内容为空,有一个大附件。如果你经常使用Linux操作系统的话,会发现这样很方便,不需要将文件取回Windows然后再用Outlook,Foxmail等客户端软件发送。当然,在Linux下使用mail需要sendmail的支持。
 
在Winows下用Outlook,Foxmail等客户端能自动识别经过uuencode编码的附件。如果附件被收取到Linux/Unix等系统下,如果Linux下的MUA或者客户端不识别,可以手工处理邮件提取相应的部分,用uudecode解码即可。
 
【注意】这里不能使用-m参数进行base64编码,否则客户端软件无法识别附件。
------------------------------------------------------------------------------------------
赵小蜗牛
QQ: 755721501
在不断奉献中谋求生存发展、打造自己的优秀品质,用人性最本质最动人的一面“营销”自己!

 

本文出自 “小蜗牛技术之家” 博客,请务必保留此出处http://snailwarrior.blog.51cto.com/680306/145073

分享至
更多
一键收藏,随时查看,分享好友!
0人
了这篇文章
类别:电子邮件技术圈()┆阅读()┆评论() ┆ 推送到技术圈返回首页

文章评论

 
2009-04-02 11:18:11
不错。ms博主在邮件方面造诣好深哇

2009-04-02 13:31:24
刚开始用Linux 好多地方不熟悉
小蜗牛的这个方法对我很有用
谢啦

2011-07-05 09:11:44
不错,那如果邮件的内容不为空呢?

 

发表评论            

【技术门诊】专家解析:软考重点难点及应试技巧
昵  称:
登录  快速注册
验证码:

请点击后输入验证码博客过2级,无需填写验证码

内  容: