
ディレクトリ内のすべての.oggファイルを.mp3ファイルに変換するシェルスクリプトを作成したいと思います。ファイル名にスペースが含まれているため、コマンドシーケンスで二重引用符を使用しています。私が使用するコマンドは
for FILE in "`ls -1 *.ogg`" ; do
ROOTFILE=`printf "%s\n" "$FILE" | sed "s/ogg//" `
ffmpeg -i "$FILE" "$ROOTFILE"mp3
done
ただし、ディレクトリ内のすべてのファイル名はffmpegによって文字列として扱われます。ファイル名内のスペースを保持しながら、個々のファイル名をどのように区別できますか?