
echo "content-type:application/octet-streamContent-Transfer-Encoding:Base64charset=utf-8"
echo "content-Disposition:attachmentfilename="${tfile}""
是mime协议(电子邮件的框架格式).
http(或ftp)的头也是mime协议.
但是在下载(http协议头)中 Content-Transfer-Encoding:Base64这个好像没意义,只是在邮件格式中才有意义.
而
filename="${tfile}"
中的tfile跟据浏览器有所不同,要对filename做编码.
shell脚本无法实现
1、可以借助�º.shellå½ä»¤æ§è¡å¦ä¸ä¸ªèæ¬æä»¶æè ç¨åéä¿åãæ¯å¦a.shåb.shï¼a.shä¸è°ç¨b.shç代ç ï¼ä¸èµ·è¾åº"hello world"çå符串ãb.shç代ç å¦ä¸echo " world!"ã
2ãa.shå¯ä»¥åå©"."æ¥æ§è¡b.shèæ¬ï¼b.shæ§è¡ç»æå¯ä»¥ä¿åå¨åéä¸ï¼ä¹å¯ç´æ¥è¾åº,a.shä¸çå 容å¦ä¸:echo "å¯ä»¥ç¨.å½ä»¤æ¥æ§è¡èæ¬æä»¶"echo "hello `./b.sh`"var=`./b.sh`echo"hello $var"ã
3ãa.shä¹å¯ä»¥åå©sourceå½ä»¤æ§è¡b.shèæ¬ï¼b.shæ§è¡ç»æå¯ä»¥ä¿åå¨åéä¸ï¼ä¹å¯ç´æ¥è¾åºãa.shä¸çå 容å¦ä¸:echo "ç¨sourceå½ä»¤æ§è¡èæ¬æä»¶"echo "hello `source ./b.sh`"var=`source ./b.sh`echo "hello $var"ã
4ãa.shä¸ä¹å¯ä»¥åå©äºbashãshçå½ä»¤æ¥æ§è¡b.shèæ¬ï¼b.shçæ§è¡ç»æå¯ä»¥ä¿åå¨åéä¸ï¼ä¹å¯ä»¥ç´æ¥è¾åºãa.shä¸çå 容å¦ä¸ã
5ãå¦å¤ï¼ä¹å¯ä»¥ä½¿ç¨$()ï¼å°b.shçæ§è¡ç»æçå 容ä¿åå°åéä¸ï¼å°±å®æäºã
笔者做过做过使用python发送邮件- Python使用yagmail库发送邮件 ,那么在不同平台都可以完成一些监控报警功能。但是在linux平台下,如果脚本是shell实现的,可以调用python脚本,也可以直接使用shell来发送。
1、按照mailx软件包, 安装后在/usr/bin/mail
sudo yum install mailx -y
2、修改配置文件/etc/mail.rc
直接修改配置文件vim /etc/mail.rc, 在最后追加下面的配置,笔者使用的是163邮箱。需要注意的是,需要进入邮箱开启SMTP服务,然后得到一个授权码,用于登录第三方邮件客户端的专用密码。smtp-auth-password即为授权码,而不是邮箱地方密码。
3、发送邮箱测试
命令行输入: echo "测试邮件" | mail -s "邮件主题" -a ./myshells/clear_buffcache.sh ***@qq.com 。-s添加邮箱主题,并添加附件后将邮箱内容一起发送给***@qq.com 。邮箱里面立马就可以收到了。
也可以使用文件内容进行邮件发送:mail -s "邮件主题" 收件地址 < mail.txt 。
也可以在命令行输入邮箱内容:mail -s "邮件主题" 收件地址 ,输入完这行命令后回车,会进入邮件正文的编写,可以输入任何文字。当邮件正文输入完成后,需要按CTRL+D结束输入后发送。
如果发送失败,咋命令行会提示错误: message not sent,并会在用户目录下的dead.letter里面显示具体信息。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)