for i in *.mp4;
do name=`echo "$i" | cut -d'.' -f1`
echo "$name"
ffmpeg -y -hide_banner -i "$i" -c:v libx264 "${name}.mp4"
done
这段脚本目前只能转码当前文件夹下的mp4文件,求修改成当前文件夹下的递归目录后缀为mp4也让ffmpeg转码。
相当于windows的for /r %%a in (*.flv) do
这段脚本目前只能转码当前文件夹下的mp4文件,求修改成当前文件夹下的递归目录后缀为mp4也让ffmpeg转码。
Re: 这段脚本目前只能转码当前文件夹下的mp4文件,求修改成当前文件夹下的递归目录后缀为mp4也让ffmpeg转码。
你代码写错了吧,怎么是把*.mp4文件转成同名的.mp4文件?从windows下的来看应该是*.flv转mp4?
代码: 全选
find -name "*.flv" -exec sh -c 'ffmpeg -y -hide_banner -i "{}" -c:v libx264 $(echo "{}" | sed "s/flv$/mp4/")' \;