如何在 Windows CMD 中使用命令“FOR”?

如何在 Windows CMD 中使用命令“FOR”?

假设我有一个这样的目录结构,

\folder 1\  
\folder 1\folder A\  
\folder 2\  
\folder 2\folder B\

等等。

每个目录中都有文件*.abc*.xyz。对于目录下的每个*.abc或文件,我需要以这种方式运行并保存其结果,*.xyzprogram.exe

program.exe -argumen1 -argument2 [*.abc or *.xyz] >> Text.txt

我的问题是如何在 Windows CMD 下用一个命令执行此操作?看起来for我应该使用这个,但是内置的帮助指南对我来说相当混乱。

答案1

我该怎么做呢?

每个目录中都有文件 *.abc 和 *.xyz。对于目录下的每个 *.abc 或 *.xyz 文件,我需要运行“program.exe”并以这种方式保存结果...

批处理文件(test.cmd):

@echo off
setlocal
for /f "usebackq" %%i in (`dir /b /s *.abc *.xyz`) do (
  program.exe -argument1 -argument2 %%i >> Text.txt
  )
)
endlocal

命令行:

for /f "usebackq" %i in (`dir /b /s *.txt *.cmd`) do @echo program.exe -argument1 -argument2 %i >> Text.txt

进一步阅读

相关内容