Linux 使用FFMPEG转换为mp4的Shell脚本将生成两次附加.mp4扩展名的新视频

Linux 使用FFMPEG转换为mp4的Shell脚本将生成两次附加.mp4扩展名的新视频,linux,shell,ffmpeg,Linux,Shell,Ffmpeg,我正在将整个视频文件夹转换为MP4。除了新的视频有两次附加“.mp4”外,脚本还能正常工作。比如说。”转换后的video.mp3将是video.mp3.mp4。下面是shell脚本。短暂性脑缺血发作 #!/bin/bash #Shell Script which converts all videos in a folder to MP4 for file in *.*; do if[ ${file: -4} != ".mp4"] #don't want to

我正在将整个视频文件夹转换为MP4。除了新的视频有两次附加“.mp4”外,脚本还能正常工作。比如说。”转换后的video.mp3将是video.mp3.mp4。下面是shell脚本。短暂性脑缺血发作

#!/bin/bash
#Shell Script which converts all videos in a folder to MP4


for file in *.*; 
    do 
        if[ ${file: -4} != ".mp4"]   #don't want to convert mp4 files           
            ffmpeg -i "$file" "${file}".mp4 
done

这将删除最后一个文件扩展名:
${file%.*}

所以您需要
${file%.*}.mp4


下面是bash中字符串操作的一个很好的参考:

此解决方案有效。该参考资料对任何学习shell脚本的人都很有帮助。