@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/