黄博彦:cmd 批处理的if命令,能不能判断多个条件?
童哲的回答:
DOS中的“或”条件不好弄,嵌套挺麻烦的。试试在【目标文件】下建立如下内容的批处理文件,看看效果是否符合。 @echo off for /f "tokens=*" %%i in ('dir /b') do (if %%~xi==.txt (echo %%~nxi) else (if %%~xi==.doc (echo %%~nxi) else (if %%~xi==.xls echo %%~nxi))) pause 上面省略了echo后面>>追加到指定文件部分,可自行添加。 不如,直接将原for命令复制成3行,将扩展名改一下就行了,好理解,而且输出结果中是按扩展名分类排列的。
徐炎的回答:
DOS中的“或”条件不好弄,嵌套挺麻烦的。试试在【目标文件】下建立如下内容的批处理文件,看看效果是否符合。 @echo off for /f "tokens=*" %%i in ('dir /b') do (if %%~xi==.txt (echo %%~nxi) else (if %%~xi==.doc (echo %%~nxi) else (if %%~xi==.xls echo %%~nxi))) pause 上面省略了echo后面>>追加到指定文件部分,可自行添加。 不如,直接将原for命令复制成3行,将扩展名改一下就行了,好理解,而且输出结果中是按扩展名分类排列的。
朱先良的回答:
if 条件1 (执行1) else (执行1反) 当条件1成立时,执行1,否则执行1反。 再看一下嵌套用法: if 条件1 ( if 条件2 ( 执行2) else ( 执行2反) 执行1 ) else (执行1反)
经验分享互联网动态
更多阅读推荐