日期:2014-05-17  浏览次数:20895 次

for循环中显示时间总一样
如下bat脚本,本来想在for循环中即时看一下某个操作前后的时间,好估摸操作花费多久。
可以两个echo %time%每次输出的时间都是一样的,这个怎么解决?
加不加enabledelayedexpansion变量延迟选项都一样。

@echo off & setlocal enabledelayedexpansion
for /l %%i in (1,1,3) do ( 
 echo %time%
 ping 127.1 -n 3 -w 2000 2>nul 1>nul
 echo %time%
 )
endlocal

而下面的循环则能显示不同的时间
@echo off
:loop
    echo %time%
    ping 127.1 -n 2 1>nul 
    echo %time%
goto loop
脚本 操作时间

------解决方案--------------------
据说,要将 %time% 改为 !time!