linux使用telnet自动发送mail.
来源:互联网 发布:成都市广电网络分公司 编辑:程序博客网 时间:2024/06/09 23:45
本文转载自:http://blog.csdn.net/vilicwh/article/details/46426267
自己学习或者工作中,遇到的一些问题,第一次文字记录,希望对人对己,都是一种帮助。
文章出发点: 需要在linux环境,做某些自动化测试工作,最终将测试结果,自动mail至同事们,这样省时方便,又有测试记录。
无奈自己才疏学浅,刚开始遇到这个问题,也不清楚改实现这个功能,只是知道应该有现成的工具mail,mailx等等,可以实现发送mail的功能;
但参考网上种种文章,说的都是乱七八糟的,怎么对这些工具进行配置也不知道,后搜到到可以使用telnet来完成邮件发送功能,
只需知道公司内服的smtp服务器地址及相应端口即可,简单方便,也无需配置,正好也符合自身的需求,故分享如下:
#!/bin/bash##完成功能:# 1.自动测试将结果重定向至log,#2.将最终测试LOG上传至FTP保存,#3.自动mail通知人员,##定义LOG FTP的地址/账户/密码LOGFTP=`172.0.0.1`LOG_USER="test"LOG_PASSWD="test"autoTest(){ local s_DATE=`date +%Y-%m-%d` local s_time=`date +%Y%m%d_%H%M%S` logname="${s_time}_test.log" 自定义测试过程 > /home/testlog/${s_DATE}/$logname DATE=${s_DATE}}#当初验证公司内部,无需身份认证,如若需要,可参考网上,增加base64身份验证即可sendMail(){ #定义了邮件发送者姓名,mail主题,smtp服务器的地址和端口 _fromPerson="xxx@xxxx.com.cn" _subject="Auto-Test-Result" _smptServer=172.0.0.2 _smptPort=25 (echo "EHLO localhost" sleep 2 echo "MAIL FROM: ${_fromPerson}" sleep 2 #使用shift用法,mail发送多位人员 list=$@ until [ $# -eq 0 ];do echo "RCPT TO: $1"sleep 2shift done echo "DATA" echo "from:${_fromPerson}" echo "subject:${_subject}" for i in $list;doecho "to: $i"sleep 2done echo "" echo "Dear all," echo "The auto-test result as below:" echo "" cat $logname echo "" echo "ftp log path: ftp://TestLog/${LOGPATH}/$DATE/$logname" echo "" echo . sleep 2 echo "QUIT") | telnet ${_smptServer} {_smptPort} }echo "auto testing..."autoTest//自动上传测试结果至FTP,//按年月日自动建立ftp文件夹//按时分秒命名的LOG存放至相应文件夹(保证LOG唯一性 )ftp -n 2>1 1>& /dev/null << EOFopen $LOGFTPuser ${LOG_USER} ${LOG_PASSWD}asciipromptmkdir TestLogcd TestLogmkdir $DATE
以上,只是基本完成功能,可以根据自己的需要来更改,此外上传ftp和sendmail时候,都将标准错误和标准输出,重定向至/dev/null;
毕竟我不想在我去拿机器的时候,看到满屏幕的动作。
阅读全文
0 0
- linux使用telnet自动发送mail.
- linux使用telnet自动发送mail.
- 使用Telnet发送E-mail的脚本客户端
- Linux使用mail功能自动发送邮件程序以及经常遇到的问题
- 自动发送E-mail
- Linux下使用mail、mutt发送邮件
- Linux下使用mail命令发送邮件
- Linux下使用mail命令发送邮件
- linux下使用uuencode+mail发送附件
- Linux下使用mail命令发送邮件
- Linux下使用mail命令发送邮件
- 使用flask mail发送mail
- Linux终端telnet连接xxx邮箱server通过命令行实现mail发送
- linux mail 发送邮件
- Linux 邮件发送mail
- 使用mail发送附件
- 使用telnet发送邮件
- 使用telnet发送邮件
- 虚拟机模拟搭建Redis集群环境
- tee命令用法
- 深入TCP(二)--可靠传输&流量控制&拥塞控制
- java 中的 static 关键字
- 如何将spring boot application.properties修改成为spring boot配置文件
- linux使用telnet自动发送mail.
- SpringBoot整合JPA操作数据库
- TabLayout与viewpager实现顶部导航栏
- sqlldr 使用
- zTree取消节点的选中状态
- Spring学习–IOC容器
- PHP程序员最常犯的11个MySQL错误[转]
- java反射机制 及 Method.invoke,Class. getMethod()的使用
- lua教程七----解决( error in function ‘addChild’. argument #2 is ‘xx’; ‘CCNode’ expected. )异常报错