有两层文件夹如下:
[工作目录]
-[王二]
--a.mp4
--b.mp4
...
-[张三]
--1.mp4
--2.mp4
...
......
在工作目录下有子文件夹内包含若干视频文件,需要批量把每个子文件夹内的所有视频合并为一个。
找了很多合并视频软件,大多数只能合并某一个文件夹内的视频,无法批量合并,所以用bat批处理实现,批处理代码如下:
1 @echo off& setlocal EnableDelayedExpansion 2 for /f "delims=" %%a in ('dir /ad/b') do ( 3 set var=%cd%\%%a 4 set var=!var:\\=\! 5 echo !var! 6 cd "!var!" 7 for /f %%s in ('dir /b "*.mp4"') do ( 8 echo file %%s >> files.txt 9 ) 10 ffmpeg -f concat -i files.txt -c copy !var!.mp4 11 del files.txt 12 echo !var!.mp4已生成。 13 cd .. 14 )
把以上代码保存为build.bat文件,放到工作目录中,运行该批处理文件即可批量合并文件夹中的视频。
程序中用到的ffmpeg可以到官网下载,然后放到windows\system32下。