0
for f in ~/Desktop/Uploads/*.flv; do
if /usr/local/bin/ffprobe ${f} 2>&1 | egrep 'Stream #0:0.+flv1'; then
<what do I put here for the batch file to skip the file and continue?>
else
if /usr/local/bin/ffprobe ${f} 2>&1 | egrep 'Stream #0:1.+speex'; then
    /usr/local/bin/ffmpeg -i ${f} -vn -acodec libfaac -ab 128k -ar 48000 -async 1 ${f/%.flv/.m4a}
    SPEEX_ADD="-i ${f/%.flv/.m4a}"
    SPEEX_MAP="-map 1:0"
    SPEEX_TRASH="rmtrash ${f/%.flv/.m4a}"
    ~/Desktop/Uploads/ffmpeg/ffmpeg -i ${f} ${SPEEX_ADD} -vcodec copy -acodec copy -map 0:0 ${SPEEX_MAP} ${f/%.flv/.mp4} && rmtrash ${f} && ${SPEEX_TRASH}
else
~/Desktop/Uploads/ffmpeg/ffmpeg -i ${f} -vcodec copy -an ${f/%.flv/.mp4} && rmtrash ${f}
fi
done

我正在使用批处理文件来转换视频文件,但我需要帮助。我可以在第三行中添加什么,使批处理文件跳过带有 flv1 视频的文件但继续到下一个文件?谢谢你的帮助。

4

2 回答 2

1

continue. 查看bash手册页以获取详细信息。

于 2012-04-19T05:08:32.307 回答
1

您可以使用continue关键字。查看Advanced Bash-Scripting Guide中的 Loop Control 页面

于 2012-04-19T05:11:59.547 回答