永发信息网

批处理怎样自动发邮件

答案:2  悬赏:0  手机版
解决时间 2021-01-25 10:37
  • 提问者网友:温柔港
  • 2021-01-25 07:45
批处理怎样自动发邮件
最佳答案
  • 五星知识达人网友:一秋
  • 2021-01-25 08:31
计划任务里面的任务是由系统进程调用执行的.在还没有开机的前提下,系统进程没有加载,是无法执行的.凡是建立在软件/系统基础上的方法都是不可能的. 但建立在硬件上的是可以的. 如果在主板上可以的话,那就试一下用批处理来设置主板,这可能是唯一的思路了.但可行与否就不知道了。
全部回答
  • 1楼网友:野慌
  • 2021-01-25 10:04
http://clubfile2.chinaren.com/uploadfile/200701/464/hakrrtfk.rar 下面的批处理代码用到了nc.exe,下载压缩包后将其解压到该批处理所在的目录下。 @echo off title 批处理发送邮件(只用于163邮箱) by:vkill set "life=test.conf" cls echo 正在检查网络 ping -n 2 smtp.163.com>nul ||(echo 请先检查网络&pause>nul&goto :eof) :start cls :::::::::::::::::::::::::::::::::::::::: :name_b title 批处理发送邮件→1/5 cls set name= set /p name=请输入邮箱用户名: if *%name%==* goto name_b echo %name%|findstr "^[0-9a-za-z_-=]*$" >nul ||(echo 语法错误,任意键返回&pause>nul&goto name_b) echo 必须保证和上面base64编码前的是同一用户名 :name__b set name_= set /p name_=请输入邮箱用户名(非base64编码的): if *%name_%==* goto name__b :pass_b title 批处理发送邮件→2/5 cls set pass= set /p pass=请输入邮箱密码: if *%pass%==* goto pass_b echo %pass%|findstr "^[0-9a-za-z_-=]*$" >nul ||(echo 语法错误,任意键返回&pause>nul&goto pass_b) :sjr_b title 批处理发送邮件→3/5 cls echo 格式为xxx@xxx.xxx 例如:test@test.com set sjr= set /p sjr=请输入收件人: if *%sjr%==* goto sjr_b echo %sjr%|findstr "^[0-9a-z]*\@[0-9a-z]*\.[a-z]*$" >nul ||(echo 语法错误,任意键返回&pause>nul&goto sjr_b) :zt_b title 批处理发送邮件→4/5 cls set zt= set /p zt=请输入邮件的主题: if *%zt%==* goto zt_b :zw_b title 批处理发送邮件→5/5 cls set zw= set /p zw=请输入邮件的正文: if *%zw%==* goto zw_b ::写nc调用的脚本 >%life% echo helo cn-dos >>%life% echo auth login >>%life% echo %name% >>%life% echo %pass% >>%life% echo mail from: ^<%name_%@163.com^> >>%life% echo rcpt to: ^<%sjr%^> >>%life% echo data >>%life% echo from: %name_%@163.com >>%life% echo to: %sjr% >>%life% echo subject: %zt% >>%life% echo mime-version: 1.0 >>%life% echo content-type: text/plain >>%life% echo. >>%life% echo %zw% >>%life% echo . >>%life% echo quit pause cls echo 正在获取smtp.163.com的ip for /f "tokens=4 delims= " %%? in ('ping -n 1 smtp.163.com ^|find /i "ping statistics for"') do (set "ip_=%%?") set "ip=%ip_::=%" if *%ip%==* (echo 没有获取到ip,可能网络有问题&pause>nul&goto :eof) echo %ip%|findstr "^[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*$">nul||(echo 没有获取到ip,可能网络有问题&pause>nul&goto :eof) echo ip获取完成 echo 正在发送邮件 ::nc连接smtp.163.com 25执行%life%中的命令发邮件 nc -nvv %ip% 25 < %life% echo 发送完成,任意键开始继续发送 del /f/q %life%>nul pause>nul&goto sjr_b goto :eof
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯