Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Перебор форматов файлов. (http://forum.oszone.net/showthread.php?t=319020)

ul9 22-09-2016 03:25 2671006

Перебор форматов файлов.
 
Здравствуйте.
Имею такую конструкцию для кодирования видео.
Код:

set ext=mp4

FOR /F "tokens=*" %%G IN ('DIR /B /S *.%ext%') DO (
    "C:\HandBrakeCLI.exe" -i "%%~nG.%ext%" -o "%%~nG-1.mp4" -f mp4 -X 840
    if exist "%%~nG-1.mp4" (
        move "%%G" "%%~dG%%~pGtemp\"
        move "%%~nG-1.mp4" "%%~dG%%~pGok\"
    )
)

Каждый раз в первую строчку приходится вписывать расширение файла для обработки. Можно как-то через запятую перечислить нужные форматы в set?
set ext=mp4, avi, wmv и т.д.

-i "%%~nG.%ext%" -o "%%~nG-1.mp4"
Это отвечает за переименовку файлов при кодировании. Например video.mp4 в video-1.mp4

megaloman 22-09-2016 10:19 2671066

Код:

Set "Mask=*.mp4 *.avi *.wmv"
FOR /F "usebackq delims=" %%G IN (`Dir %Mask% /b /s /a-d 2^>nul`) DO .............

Но если хочется именно через запятую и именно расширения, то:
Код:

Set "Ext=mp4,avi,wmv"

FOR %%E IN (%Ext%) DO (
        FOR /F "usebackq delims=" %%G IN (`Dir /b /s /a-d *.%%E 2^>nul`) DO (
                Echo %%G
        )
)



Время: 22:24.

Время: 22:24.
© OSzone.net 2001-