我在 Ubuntu 18.04 系统中有这些示例文件:
VID_20190407_160033.3gp
VID_20190407_161444.3gp
VID_20190407_161609.3gp
VID_20190415_183315.3gp
VID_20190415_183411.3gp
VID_20190415_192712.3gp
VID_20190420_124435.3gp
VID_20190420_125755.3gp
VID_20190420_130214.3gp
VID_20190420_141700.3gp
我想通过脚本(可能使用ffmpeg?)将 3GP 文件连接到一个文件中,按文件名中的 YYYYMMDD 日期选择文件,结果为:
VID_20190407.3gp
VID_20190415.3gp
VID_20190420.3gp
编写脚本的最佳方法是什么?
系统
Linux local 5.0.0-29-lowlatency #31-Ubuntu SMP PREEMPT Thu Sep 12 14:13:01 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
谢谢你。
3GP文件可以通过类似以下命令使用ffmpeg连接:
一旦你创建了一个for-next循环来过滤 YYYYMMDD,使用第一个值的第一个实例作为变量,收集 _XXXXXX 文件名组件,并按顺序逐步执行它们;然后,转到下一个 YYYYMMDD 值并逐步浏览其所有文件。
--
使用虚拟 concat demuxer的另一种更优雅的方法是llogan引起我的注意
A) 计算具有第一个 YYYYMMDD 前缀的文件的数量,然后
B) 创建一个控制文件mylist.txt,其中包含与该日期前缀匹配的每个文件的一行,如下所示:
或者
然后 C) 执行
现在,您已经连接了第一个文件集。进入下一个 YYYYMMDD 组并重复。