修复视频文件的 Shell 脚本

scp*_*now 6 command-line video bash scripts ffmpeg

我正在尝试编写一个 shell 脚本,它将使用此命令修复目录中的每个 .mkv 文件

ffmpeg -i filename.mkv -c copy filename-fixed.mkv
Run Code Online (Sandbox Code Playgroud)

我必须恢复包含数百个文件的磁盘,其中一些文件已损坏。他们目前根本不玩或使我的系统崩溃。我已识别出所有损坏的文件,它们位于自己的目录中。我认为最简单的方法是在所有文件上运行脚本,但我对脚本很陌生

小智 7

在运行批处理操作之前,首先确保您要使用的命令确实有效。如果是这样,以上面的命令为例,您可以使用此命令将相同的命令应用于目录中的所有 *.mkv 文件。

for file in *.mkv; do ffmpeg -i "$file" -c copy "${file%.*}-fixed.${file##*.}"; done
Run Code Online (Sandbox Code Playgroud)

该命令将应用于每个具有 mkv 扩展名的文件,并且输出将固定附加到名称中。