lame.exe на все wavs в папке с .bat - PullRequest
2 голосов
/ 23 марта 2012

Я хотел бы написать командный файл, который запускает строку cmd "lame.exe [options] [infile] [outfile]" в папке WAV-файлов.

что-то вроде

FOR %% f IN (dir * .wav) DO (lame.exe -V0 -h %% f.wav %% f.mp3)

конечно, это неправильно, но ... как мнегенерировать правильные [infile] [outfile] аргументы для этого?

Ответы [ 2 ]

4 голосов
/ 16 апреля 2012

Я попробовал выше, и получил все виды синтаксических ошибок.Проблема возникает, если в именах файлов есть пробелы.Таким образом, это был бы более общий пакетный файл:

for %%i in (*.wav) do "D:\yourdir\lame.exe" -V 6 --vbr-old --resample 22.05 "%%i" "%%~ni.mp3"

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

0 голосов
/ 23 марта 2012

Попробуйте:

for %%i in (C:\Wavs\*.wav) do lame.exe -V0 -h %%i %%~nI.mp3

Просто замените C:\Wavs на ваш путь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...