@echo off
set filename =
cd GWConfig_TDS-mtpe3003
set filename = VCU17_CCU6\applications\VCU17APP
GOTO CHECKFILE
:CHECKFILE
echo reached
IF EXIST %filename% ( echo exists
) ELSE ( echo Doesnot exist )
//////////////////////////////////////////////
这里的输出显示:
reached
不回显“存在”或“不存在”
使用变量“文件名”有什么问题吗?
此外,
@echo off
set filename =
cd GWConfig_TDS-mtpe3003
set filename = VCU17_CCU6\applications\VCU17APP
GOTO CHECKFILE
:CHECKFILE
echo reached
IF EXIST VCU17_CCU6\applications\VCU17APP ( echo exists
) ELSE ( echo Doesnot exist )
给出输出:
reached
exists.
最佳答案
这里有两个问题。一是变量名后面的空格:
SET filename = whatever
应该是
SET filename=whatever
(或者您可以稍后使用 %filename %
,但这太可怕了:)
第二个问题是,如果没有任何引号,如果 %filename%
为空,您的“IF”测试将无法正常工作。引用它:
IF EXIST "%filename%" ( echo exists
) ELSE ( echo Doesnot exist )
关于windows - 批处理文件 - 使用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1388247/