Имеется скрипт следующего вида
#!/bin/bash
FILE_LIST="x"
ls -1 *.wav > $FILE_LIST
while read WAV_FILE
do
FLAC_FILE=`echo $WAV_FILE | sed 's/.wav/.flac/g'` ;
ffmpeg -y -i "$WAV_FILE" -acodec flac "$FLAC_FILE"
done < "$FILE_LIST"
Проблема в том, что с командой ffmpeg while прогоняется только один раз, т.е. ffmpeg конвертирует только один файл. При этом цикл рабочий, и это видно, если подставить, например, cp -v «$WAV_FILE» «$FLAC_FILE» вместо ffmpeg. Где ошибка? И можно ли оптимизировать скрипт, так чтобы чтения файла не происходило, а было напрямую из ls -1 *.wav?