使用dos批处理脚本在特定文件夹中使用for循环

时间:2016-02-04 14:13:03

标签: batch-file

我想使用批处理脚本使用yuv文件作为特定文件夹中的输入来运行可执行文件。但是,我使用的上述代码只运行一次然后停止。有谁可以帮助我?

>  SET /A COUNT=1
>     for /r "F:\coding\Wetlands_1920x1080p\" %%v in (*.yuv) do (
>           TAppEncoder.exe -c EBU.cfg -f 30 -i "%%v" -wdt 1920 -hgt 1080 -o %COUNT%.yuv >%COUNT%.txt
>           SET /A COUNT+=1
>           )

1 个答案:

答案 0 :(得分:2)

setlocal enabledelayedexpansion
SET /A COUNT=1
for /r "F:\coding\Wetlands_1920x1080p\" %%v in (*.yuv) do (
       TAppEncoder.exe -c EBU.cfg -f 30 -i "%%v" -wdt 1920 -hgt 1080 -o !COUNT!.yuv >!COUNT!.txt
  SET /A COUNT+=1
)

block(带括号的系列语句)中,%var%表示块varparsed的值。要访问运行时值,您需要调用delayedexpansion,然后使用!var!来检索所需的值。

在delayedexpansion问题上查看任意数量的SO项目。 (这很常见......)