zoukankan      html  css  js  c++  java
  • 一条命令将windows下多个ts文件合并为一个ts文件

    首先在待合并的文件夹下创建concat.bat(名字随意啦),写入如下命令

    copy /b "%~dp0"*.ts  "%~dp0"
    ew.ts

    执行该命令后,当前目录下的全部TS文件就被合并成一个new.ts文件了(你原来的那堆文件仍然存在)。

    命令解释:
    这里使用copy命令的文件合并功能进行ts文件的合并,copy后面的 /b  参数表示把文件按二进制格式来合并,如果不加这个参数,则会把目标当成文本文件来合并,并在文件内添加不必要的标记,这会导致播放出错,所以必须加 /b 参数

    该命令的合并排序是按照你系统下的字母序来的,比如你的文件名是disk1.ts, disk2.ts, disk3.ts,那该命令就会按照disk1.ts+disk2.ts+disk3.ts的顺序来合并这三个文件,事实上,绝大多数网上下载的高清文件,都已经按字母序排列好了,所以你直接执行该命令即可。


    上面的例子如果换成diskA.ts, diskB.ts, diskC.ts,该命令仍能正常进行,它会按diskA.ts+diskB.ts+diskC.ts(请统一排序关键字的大小写,即全部用大写A、B、C 或全部用小写a、b、c)。


    最好只有一个排序关键字(数字或字母),也就是说各文件名相互间只有一个字符不同
    如果你想万无一失,可以手工把文件名改为1.ts, 2.ts, 3.ts, …..再执行合并。

    至于 %~dp0 则是 当前盘符和路径 的意思

    更多CMD获取当前目录的命令

    @echo off
    echo 当前盘符:%~d0
    echo 当前盘符和路径:%~dp0
    echo 当前批处理全路径:%~f0
    echo 当前盘符和路径的短文件名格式:%~sdp0
    echo 当前CMD默认目录:%cd%
    echo 目录中有空格也可以加入""避免找不到路径
    echo 当前盘符:"%~d0"
    echo 当前盘符和路径:"%~dp0"
    echo 当前批处理全路径:"%~f0"
    echo 当前盘符和路径的短文件名格式:"%~sdp0"
    echo 当前CMD默认目录:"%cd%"
    pause

    这个方案经过我测试是有点问题的,比如ts视频超过100个超出的部分就无法成功合并。我的测试机是win10系统

  • 相关阅读:
    POJ3693 Maximum repetition substring —— 后缀数组 重复次数最多的连续重复子串
    SPOJ
    POJ2774 Long Long Message —— 后缀数组 两字符串的最长公共子串
    POJ3261 Milk Patterns —— 后缀数组 出现k次且可重叠的最长子串
    POJ1743 Musical Theme —— 后缀数组 重复出现且不重叠的最长子串
    SPOJ
    AC自动机小结
    HDU3247 Resource Archiver —— AC自动机 + BFS最短路 + 状压DP
    POJ1625 Censored! —— AC自动机 + DP + 大数
    Herding
  • 原文地址:https://www.cnblogs.com/wpjamer/p/9160675.html
Copyright © 2011-2022 走看看