|
上这个论坛的人,都 会用到 如 IF EXIST [path] filename 或者 copy 命令 ,我就碰到过不能正确执行的时候,为什么呢?
我的命令如下:
if exist %cd%\test.bat copy %cd%\test.bat d:\
(%CD%为当前目录,实际使用时为文件所在目录)
我的批命令就是这个test.bat,可执行时,有时正确,有时不正确,例如,将test.bat复制到c:\program files目录下时,执行肯定不正确,
这个情况在XP或VISTA都一样,而在其他目录执行正确,为什么呢????
试试了几回,才发现,是c:\program files这个目录存在空格!!!,IF exist、copy等命令有时候对空格执行时会出现错误!!
正确的用法是:
if EXIST "%CD%"\test.bat copy "%CD%"\test.bat d:\
即有可能存在空格的文件全路径有理无理都用“”引起来就不会错,好象在什么地方见过这个提示的,
但是稍不注意,写批命令时刚好所在的目录没有空格,运行正常,当放到有空格的目录时,就会出错,还不知道错在什么地方!!!(我的命令就是放到program files后才发现的)
希望大家注意! |
|