批处理中如何判断参数中含有某些字符串?
批处理中如何判断参数中含有某些字符串?
一般情况判断完全匹配的时候用==
@echooff if"%1"=="abc" @echoOK
但是部分匹配怎么写呢?比如判断参数中前三个字符是"abc"时
@echooff echo%1|findstr"^abc">nul echo%errorlevel%
测试结果如下:
C:\>testxixi
1
C:\>test
1
C:\>testabcd
0
C:\>testxabcd
1
非常感谢,但是这样怎么实现ifelse的效果呢?
比如
if"%1"含有"abc" @echoOK
if"%1"含有"def" @echoNG
@echooff echo%1|findstr"^abc">nul if%errorlevel%equ0( echook )else( echonotok )