Конвертировать.gsm в.wav с SOX
Я пытаюсь конвертировать один музыкальный файл с форматом .gsm
отформатировать .wav
, Вот как я пытался
for f in *.gsm; do sox $f new/${f%.wav}; done
В результате я получаю одинаковые файлы с одинаковым форматом .gsm
в new/
каталог.
Кто-нибудь может указать, в чем здесь проблема?
1 ответ
Решение
${f%.wav}
удаляет .wav
с конца переменной. поскольку f
только когда-либо содержит имена файлов с .gsm
в конце, ${f%.wav}
выводит имя файла без изменений.
Вы, вероятно, хотите "${f%.gsm}.wav"
вместо этого (при условии, что (а) sox
на самом деле конвертировать файлы, и только расширение является неправильным или (б) sox
использует имена файлов для определения требуемого преобразования, поэтому исправление имен файлов будет исправлять преобразование).