Я хочу конвертировать некоторые файлы с помощью программы, для запуска которой требуется CMD. Он получает 2 аргумента: первое имя входного файла и второй результат.

Я использовал команду FOR %%f чтобы использовать ее для всех файлов в папке, например:

FOR %%f IN (*) DO xWMAEncode.exe %%f output

но вход и выход имеют разные форматы файлов и должны быть такими:

xWMAEncode.exe INPUT.xwm OUTPUT.wav

поэтому вопрос заключается в том, как выполнить команду в этой ситуации с тем же именем файла в другом формате, чтобы сохранить преобразованные файлы под своим именем в другом формате.

2 ответа2

2

Если вам нужно базовое имя (то есть имя файла без расширения, например test.txttest), чтобы избежать получения файлов типа file.xwm.wav вам просто нужно использовать флаг ~n :

FOR %%f IN (*) DO xWMAEncode.exe %%f %%~nf.wav
0

Вы можете попробовать использовать dir /B и создать имена файлов самостоятельно:

FOR /F %%f IN ('DIR /B') DO xWMAEncode.exe %%f.xwm %%f-output.wav

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .