如何修改此批次以继续工作?

时间:2016-03-10 05:49:14

标签: batch-file

我的朋友想要24小时运行这批。所以基本上它是ping和打印时间

    @echo off

set/p host=host Address: 
set logfile=Log_%host%.log
echo Target Host = %host% >%logfile%
for /f "tokens=*" %%A in ('ping %host% -n 1 ') do (echo %%A>>%logfile% && GOTO Ping)
:Ping
for /f "tokens=* skip=2" %%A in ('ping %host% -n 1 ') do (
    echo %date% %time:~0,2%:%time:~3,2%:%time:~6,2% %%A>>%logfile%
    echo %date% %time:~0,2%:%time:~3,2%:%time:~6,2% %%A
    timeout 1 >NUL    
    GOTO Ping)

他告诉我,当ping程序停止运行时。这是不希望的。他希望程序继续运行并记录它的时间。

如何修改?

1 个答案:

答案 0 :(得分:0)

这会将响应时间记录为大于100毫秒。适应你的意愿。

:loop
    wmic /append:"textfile.txt" path win32_pingstatus where "address='127.0.0.1' and responsetime > 100" get responsetime,timestamprecord
    timeout /t 5
goto loop

糟糕的主意GoTo放入for循环。

请参阅wmic /?wmic path win32_pingstatus get /?寻求帮助..