简单的通配符使用

时间:2013-07-03 01:22:49

标签: variables batch-file wildcard dir

编辑:我刚刚将if更改为if else

IF "%CD:~1%"==":\" ( set FIR=%CD:~0,2% ) ELSE ( set FIR=%CD% )

尝试使用通配符来检测批处理文件是否在根目录中(因为根目录会导致在DIR结尾处出现反斜杠)

我需要用简单的if语句来确定它是否是*:\或者不是。我尝试过使用通配符*:\和?:\但无济于事。如果我使用驱动器号,例如:G:\它可以工作。

if %CD%==G:\ echo SOMETHING WRONG HERE

效果非常好,直到驱动器号发生变化。

if %CD%==?:\ echo SOMETHING WRONG HERE

if "%CD%"=="?:\" echo SOMETHING WRONG HERE

不起作用。

编辑:在阅读之后,如果和通配符不兼容,则结果显示!

2 个答案:

答案 0 :(得分:2)

试试这个:

if "%CD:~-2%"==":\" (echo root) else echo NOT root

见文件help set

答案 1 :(得分:0)

通配符在命令的IF语句中不可用。