カメラのビデオを DV から mkv に自動的に変換するスクリプトを作成しましたが、ファイル名変数を正しくエスケープしないため、スクリプトを機能させることができません。スクリプトは次のとおりです。
#!/bin/bash
FTITLE="Tapes 2012, Tape 01 - "
i=1;
find ./ -type f -name "dv_*.dv" | while read fname; do
CTIME=`stat -c %Y ${fname}`
FNAME="${FTITLE} - ${i}.mkv"
/usr/bin/ffmpeg -i ${fname} ${x264_OPTIONS} ./"$FNAME"
let i=$i+1
done
スクリプトを実行すると、次のエラーが表示されます。
[NULL @ 0x645f40] Unable to find a suitable output format for '2012,'
2012,: Invalid argument
明らかに、これはスクリプトとファイル名の問題です。私はそれを逃れようとした
/usr/bin/ffmpeg -i ${fname} ${x264_OPTIONS} ./"\"$FNAME\""
しかし、それもうまくいきませんでした。