[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] 想求教一下这个批处理怎么实现发送邮件的

本帖最后由 咒夜坠 于 2013-2-28 17:39 编辑

想求教一下这个批处理怎么实现发送邮件的


下面是说明
  1. 一个是用于服务器监控(serverstate.bat)批处理文件,并将监控到的数据进行保存,以及判断服务器在线状态,当服务器断线时,则自动调用另外一个批处理文件(mail.bat),并将要发送到对方的邮箱添加在相应的字段后面,使用DOS命令,在DOS窗口下实现邮件发送,有网友要问了,不是说服务器断线短信通知吗?怎么这里又变成邮件啦,呵呵,先不要介意,当你注册了手机邮箱,同时再开通邮件短信通知功能,你就可以收到短信啦!如果你是移动的手机,[url=http://mail.10086.cn/Register/default.aspx?key=dU6ZOcYNpuPpqvK1staqh8cgMa%2bMXeKOw8XK%2bPC4fSKd3ARRmlcO%2faDXkOkaZQNaihR6Ict12iE5HGxJAY8oCfCSXqXHvW1JRQOnpkb7idU%3d]复制上面的地址注册一个吧![/url]没关系,不要以为是广告,你也可以不注册,但只能收到邮件,对你有用没用,看你自己的需要吧!
  2. 记得把里面的邮箱251671879@qq.com改掉,你们可以改为手机号码@139.com,开通短信通知功能,你的邮件一送达,即可以收到短信了!)
复制代码
下面是serverstate.bat用于服务器监控
  1. @rem pinglog.bat Createdby Bankin
  2. @echo off
  3. echo 本系统用于监控网络服务器的运行情况,当服务器出现丢包4次时,则自动发邮件通知,若采用的是手机邮箱,则更可以实现短信通知的功能。服务器断线状况具体情况可参考netstate.txt 文件。当服务器出现死机时会进行邮件通知,如果出现误报情况,请检查netstate.txt文件,查询是否有异常。
  4. echo 现进入试用阶段,系统正在运行,请勿关闭
  5. :first
  6. echo 重新循环第一台被监控服务器
  7. set /a num=0
  8. :begin3d04
  9. ping -n 2 218.16.118.211 | find "Request"
  10. if %ERRORLEVEL%==1 set /a num=0
  11. if %ERRORLEVEL%==1 goto begin3d05
  12. if %num% == 1 goto 3d04
  13. set /a num=%num%+1
  14. echo %num%
  15. echo 3d04服务器在%date%,%time%丢包一次记录 >>netstate.txt
  16. goto begin3d04
  17. :begin3d05
  18. ping -n 2 218.16.118.193 | find "Request"
  19. if %ERRORLEVEL%==1 set /a num=0
  20. if %ERRORLEVEL%==1 goto begin3e04
  21. if %num% == 1 goto 3d05
  22. set /a num=%num%+1
  23. echo %num%
  24. echo 3d05服务器在%date%,%time%丢包一次记录 >>netstate.txt
  25. goto begin3d05
  26. :begin3e04
  27. ping -n 2 218.16.118.204 | find "Request"
  28. if %ERRORLEVEL%==1 set /a num=0
  29. if %ERRORLEVEL%==1 goto first
  30. if %num% == 1 goto 3e04
  31. set /a num=%num%+1
  32. echo %num%
  33. echo 3e04服务器在%date%,%time%丢包一次记录 >>netstate.txt
  34. goto begin3e04
  35. :3d04
  36. echo 3d04 at %time% is loss >>aa.txt
  37. mail 251671879@qq.com aa.txt
  38. goto end
  39. :3d05
  40. echo 3d05  at %time% is die >>aa.txt
  41. mail 251671879@qq.com aa.txt
  42. goto end
  43. :3e04
  44. echo 3e04 at %time% is loss >>aa.txt
  45. mail 251671879@qq.com aa.txt
  46. goto end
  47. :end
复制代码
下面是mail.bat用于发送邮件
  1. @echo off
  2. title DOS下发邮件
  3. set subject=somebody login
  4. set b=mfsoww@163.com
  5. set username=bWZzb3d3QDE2My5jb20=
  6. set password=dWRid2dpaWF3
  7. echo set sh=WScript.CreateObject("WScript.Shell")>aa.vbs
  8. echo WScript.Sleep 100>>aa.vbs
  9. echo sh.Run "telnet">>aa.vbs
  10. echo WScript.Sleep 200>>aa.vbs
  11. echo sh.SendKeys "open smtp.163.com 25">>aa.vbs
  12. echo WScript.Sleep 200>>aa.vbs
  13. echo sh.SendKeys "{ENTER}">>aa.vbs
  14. echo sh.SendKeys "ehlo aaa">>aa.vbs
  15. echo WScript.Sleep 100>>aa.vbs
  16. echo sh.SendKeys "{ENTER}">>aa.vbs
  17. echo WScript.Sleep 100>>aa.vbs
  18. echo sh.SendKeys "auth login">>aa.vbs
  19. echo WScript.Sleep 100>>aa.vbs
  20. echo sh.SendKeys "{ENTER}">>aa.vbs
  21. echo WScript.Sleep 100>>aa.vbs
  22. echo sh.SendKeys "%username%">>aa.vbs
  23. echo WScript.Sleep 100>>aa.vbs
  24. echo sh.SendKeys "{ENTER}">>aa.vbs
  25. echo WScript.Sleep 100>>aa.vbs
  26. echo sh.SendKeys "%password%">>aa.vbs
  27. echo WScript.Sleep 100>>aa.vbs
  28. echo sh.SendKeys "{ENTER}">>aa.vbs
  29. echo WScript.Sleep 100>>aa.vbs
  30. echo sh.SendKeys "mail from:<%b%>">>aa.vbs
  31. echo WScript.Sleep 100>>aa.vbs
  32. echo sh.SendKeys "{ENTER}">>aa.vbs
  33. echo WScript.Sleep 100>>aa.vbs
  34. echo sh.SendKeys "rcpt to:<%1>">>aa.vbs
  35. echo WScript.Sleep 100>>aa.vbs
  36. echo sh.SendKeys "{ENTER}">>aa.vbs
  37. echo WScript.Sleep 100>>aa.vbs
  38. echo sh.SendKeys "data">>aa.vbs
  39. echo WScript.Sleep 100>>aa.vbs
  40. echo sh.SendKeys "{ENTER}">>aa.vbs
  41. echo WScript.Sleep 100>>aa.vbs
  42. echo sh.SendKeys "from:%b%">>aa.vbs
  43. echo WScript.Sleep 100>>aa.vbs
  44. echo sh.SendKeys "{ENTER}">>aa.vbs
  45. echo WScript.Sleep 100>>aa.vbs
  46. echo sh.SendKeys "to:%1">>aa.vbs
  47. echo WScript.Sleep 100>>aa.vbs
  48. echo sh.SendKeys "{ENTER}">>aa.vbs
  49. echo WScript.Sleep 100>>aa.vbs
  50. echo sh.SendKeys "subject:%subject%">>aa.vbs
  51. echo WScript.Sleep 100>>aa.vbs
  52. echo sh.SendKeys "{ENTER}">>aa.vbs
  53. echo WScript.Sleep 100>>aa.vbs
  54. echo sh.SendKeys "{ENTER}">>aa.vbs
  55. echo WScript.Sleep 100>>aa.vbs
  56. echo @echo off>aa.bat
  57. echo for /f "delims=" %%%%i in (%2) do (>>aa.bat
  58. echo echo sh.SendKeys "%%%%i{ENTER}")>>aa.bat
  59. call aa.bat>>aa.vbs
  60. echo WScript.Sleep 200>>aa.vbs
  61. echo sh.SendKeys "{ENTER}">>aa.vbs
  62. echo WScript.Sleep 100>>aa.vbs
  63. echo sh.SendKeys ".">>aa.vbs
  64. echo WScript.Sleep 100>>aa.vbs
  65. echo sh.SendKeys "{ENTER}">>aa.vbs
  66. echo WScript.Sleep 100>>aa.vbs
  67. echo sh.SendKeys "quit{ENTER}">>aa.vbs
  68. echo WScript.Sleep 100>>aa.vbs
  69. echo sh.SendKeys "{ENTER}">>aa.vbs
  70. echo WScript.Sleep(100)>>aa.vbs
  71. echo sh.SendKeys "q{ENTER}">>aa.vbs
  72. echo WScript.Sleep(100)>>aa.vbs
  73. echo sh.SendKeys "q{ENTER}">>aa.vbs
  74. echo sh.SendKeys "q{ENTER}">>aa.vbs
  75. echo WScript.Sleep(100)>>aa.vbs
  76. echo sh.SendKeys "q{ENTER}">>aa.vbs
  77. echo sh.SendKeys "EXIT{ENTER}">>aa.vbs
  78. aa.vbs
  79. del aa.bat
  80. del aa.vbs
  81. del aa.txt
  82. del y.vbs
复制代码

返回列表