Суть такова. Есть каталог:
ls Music/TheWall/Pink\ Floyd\ -\ 1979\ -\ The\ Wall\ \(24bit-96kHz\)/Disc\ 1/
'01 In the Flesh.flac' '05 Another Brick in the Wall, Pt. 2.flac' '09 Young Lust.flac' '13 Goodbye Cruel World.flac'
'02 The Thin Ice.flac' '06 Mother.flac' '10 One of My Turns.flac'
'03 Another Brick in the Wall, Pt. 1.flac' '07 Goodbye Blue Sky.flac' "11 Don't Leave Me Now.flac"
'04 The Happiest Days of Our Lives.flac' '08 Empty Spaces.flac' '12 Another Brick in the Wall, Pt. 3.flac'
Из него формируется список файлов без расширения.
ls Music/TheWall/Pink\ Floyd\ -\ 1979\ -\ The\ Wall\ \(24bit-96kHz\)/Disc\ 1/ | sed s/.flac/''/g | sed -e s/' '/'\ '/g > TheWall.list
cat TheWall.list
01 In the Flesh
02 The Thin Ice
03 Another Brick in the Wall, Pt. 1
04 The Happiest Days of Our Lives
05 Another Brick in the Wall, Pt. 2
06 Mother
07 Goodbye Blue Sky
08 Empty Spaces
09 Young Lust
10 One of My Turns
11 Don't Leave Me Now
12 Another Brick in the Wall, Pt. 3
13 Goodbye Cruel World
Команда:
for i in $(cat TheWall.list); do ffmpeg -i Music/TheWall/Pink\ Floyd\ -\ 1979\ -\ The\ Wall\ \(24bit-96kHz\)/Disc\ 1/$i.flac -ab 320k -map_metadata 0 -id3v2_version 3 mp3/The_Wall/$i.mp3; done
Спотыкается об эти пробелы. Если обернуть пути одинарными кавычками — он перестает воспринимать $i переменную. Как быть?