[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
原帖由 CZT 于 2008-9-2 12:51 发表
Pusofalse兄:你的这两段代码,我测试及思考了很久。
但没有总结到什么,甚至越看越糊涂。都不知道他到底为什么会显示这样的结果了。
你能帮忙解释一下吗?谢了

echo %time%
ping 127.0.0.1 >nul
echo %time%
两次的显示不同,是因为%time%是一个动态环境变量。

echo %time% &ping 127.0.0.1 >nul &echo %time%

如果不是特殊原因,这样写本身是错误的,因为后一个变量%time%没有被动态扩展,具体参考“变量延迟”和“预处理机制”的相关论坛贴。他的正确写法(批处理中)为:
setlocal enabledelayedexpansion
echo %time% &ping 127.0.0.1 >nul &echo !time!
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

返回列表