批处理在带括号路径中运行的问题
因为项目安装在win7 64的环境下时无法运行,花了点功夫研究了一下。
原本以为是因为64位环境的问题,后来据同事讲将 Program files(x86[b])[/b]改成 Program file(x86就好了,觉得还是bat文件写错了。 于是查看代码,看到如下语句,
if not %ERRORLEVEL% == 0 (
echo bla...bla... %~dp0
)
其中%~dp0表示当前路径,所以程序在执行的时候就成了,
if not %ERRORLEVEL% == 0 [b]([/b]
echo bla...bla... C:\Program files(x86[b])[/b]
)
就出现了括号匹配的错误。
修改方法可以用双引号,如“%~dp0”
以后写bat的时候还真得注意了。