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