batch-file - 时间环境变量未按预期工作
问题描述
我尝试使用 Windows 命令行来测量时间。
echo %TIME% & timeout 5 > NUL & echo %TIME%
但是这个命令会打印两个相等的时间戳。为什么?我做错了什么?
timeout 5
只是举例。
解决方案
解释器在执行任何操作之前首先解析整行(用%time%
相同的值替换两者(因为解析时间相同)) 。您需要延迟扩展才能使其工作。
如果您需要命令行解决方案:
cmd /v /c "echo !time! & timeout 5 & echo !time!"