标题: [文件操作] [已解决]批处理如何批量封装MP4文件 [打印本页]
作者: zx8wh 时间: 2010-8-20 21:49 标题: [已解决]批处理如何批量封装MP4文件
要将文件夹下面所有MP4格式的文件封装成FLV格式的文件,不懂怎么写批量处理的代码?
单个文件封装的代码如下:
ffmpeg -vcodec copy -acodec copy -i 1.mp4 -f flv 1.flv
我自己学着弄了个批量处理的代码:
@echo off
for %%I in (*.mp4) do ffmpeg -vcodec copy -acodec copy -i %%I -f flv %%I.flv
pause
但是运行后得到的是类似1.mp4.flv这样的文件了,请问怎样修改才能直接得到类似1.flv这样的文件?
[ 本帖最后由 zx8wh 于 2010-8-21 11:55 编辑 ]
作者: TX_kakashi 时间: 2010-8-20 23:10
- for %%I in (*.mp4) do ffmpeg -vcodec copy -acodec copy -i %%I -f flv %%~nI.flv
复制代码
作者: zx8wh 时间: 2010-8-21 09:21
测试通过,非常感谢!再请问%%~nI这个是什么意思呀?能详细解说一下吗?
作者: TX_kakashi 时间: 2010-8-21 10:02
在cmd里输入 for/?.
%%~nI里的~n是修饰用的,表示%%I的文件名,但不包括后缀名。
另外,FOR 变量参照的替换已被增强。您现在可以使用下列
选项语法:
~I - 删除任何引号("),扩充 %I
%~fI - 将 %I 扩充到一个完全合格的路径名
%~dI - 仅将 %I 扩充到一个驱动器号
%~pI - 仅将 %I 扩充到一个路径
%~nI - 仅将 %I 扩充到一个文件名
%~xI - 仅将 %I 扩充到一个文件扩展名
%~sI - 扩充的路径只含有短名
%~aI - 将 %I 扩充到文件的文件属性
%~tI - 将 %I 扩充到文件的日期/时间
%~zI - 将 %I 扩充到文件的大小
%~$PATH:I - 查找列在路径环境变量的目录,并将 %I 扩充
到找到的第一个完全合格的名称。如果环境变量名
未被定义,或者没有找到文件,此组合键会扩充到
空字符串
作者: zx8wh 时间: 2010-8-21 11:54
非常感谢TX_kakashi的详细解答!!!
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |