反转FOR命令的意义?

时间:2014-09-23 01:27:01

标签: windows batch-file for-loop command-prompt

使用批处理文件,它非常简单,可以处理在文件名或扩展名中共享字符串的所有文件,例如:

FOR /R %F IN (*.EXE) DO @ECHO %F

但是,如果我想反转文件集的意义怎么办?比如,处理以.EXE结尾的所有文件?

FOR /R %F IN (anything-but-exe) DO @ECHO %F

通过阅读FOR /?

的输出,我找不到任何我想要的东西

2 个答案:

答案 0 :(得分:5)

for /f "tokens=* delims=" %a in ('dir /s /b /a:-d^|findstr /i/e/v ".exe" ') do @echo %a

答案 1 :(得分:4)

这应该是另一种选择:

FOR /R %F IN (*.*) DO @if /i not "%~xF"==".exe" ECHO %F