我在登录Windows时有一个运行python脚本的蝙蝠。
start C:\python34\pythonw.exe D:\myscript.py
myscript.py需要一些Internet活动,有时无法正常执行,因为登录Windows后没有立即激活Internet连接。
如何确保只有在建立了Internet连接后才运行myscript?
答案 0 :(得分:2)
只需ping一下www.google.com等服务器即可 然后你只需要检查错误级别的答案:
ping www.google.com -n 1 -w 1000
if errorlevel 0 start C:\python34\pythonw.exe D:\myscript.py
if errorlevel 1 echo No network
修改强> 添加了几行代码。
另一个编辑: 一个更好的方法就是这样:
:ping
ping 1.2.3.4 -n 1 -w 1000 > nul
set target=www.google.com
ping %target% -n 1 | find "TTL="
if errorlevel==1 goto ping
start C:\python34\pythonw.exe D:\myscript.py
第一次ping会增加1秒(1000毫秒)的延迟,所以我们不会超载。
答案 1 :(得分:0)
@echo off
set target=www.google.com
echo Waiting for connection..
:ping
<nul set /p strTemp=.
timeout 2 > NUL
ping %target% -n 1 | find "TTL="
if errorlevel==1 goto ping
echo.
echo Connected
REM start somthing
REM start C:\_soft\putty.exe
答案 2 :(得分:0)
这对我有用,也许对您也有帮助!
@ECHO OFF
:loop
PING google.com | FIND "time=" > NUL
echo waiting.....
IF ERRORLEVEL 1 goto loop
ECHO You have active connection to the Internet
REM you can add your scripts to run after internet connection success
pause
现在我试图显示为蝙蝠中的负载,上面的代码将打印等待中……直到连接成功