在创建一些网络流量捕获脚本(.cmd)Windows NT6x、Windows 7 及更高版本(在 Windows 7/8/10 中测试)时遇到的一个小故障让我震惊。
简单明了:
CD /d x:\net\tools
无法切换到“x:”驱动器并跳转到“\net\tools”文件夹,也没有报告任何错误(甚至没有错误级别)
有任何想法吗?
答案1
刚刚调试了这该死的东西......
令人难以置信的是,问题是“setlocal”指令
干扰了 CD 命令......
它甚至干扰了 X:命令......
要测试“imbroglio”,只需创建一个脚本“x.cmd”,如下所示:
setlocal
cd /d c:\windows
保存脚本,
将自己放入 c:\ 或者如果你在 x:\ 中有另一个驱动器,则
执行脚本...
并注意,当脚本完成时,你不在 c:\windows 文件夹中
奇怪!'setlocal' 应该只会影响环境变量...