标题: (已解决)把文件拖到批处理如何执行
[打印本页]
作者: jasonwang
时间: 2011-1-20 11:14
标题: (已解决)把文件拖到批处理如何执行
有A.cmd批处理,中间有一个变量是%SRC%,我需要把B文件拖到A.cmd这个文件上,应该自动将B文件的路径与文件名赋于%SRC%变量,应该如何实现呢,附上我目前写好的批处理供参考,但好像是有问题的。
以下代码已经测试通过。
@echo off
color 0C
FOR /D /R "%~dp0" %%A IN (*) DO @SET PATH=%%A;!PATH!
CD /D "%~dp1"
SET SRC=%~n1
ECHO 转换AVS的视频文件为X.264...
"D:\GreenSoft\DVD.Tools\LiteMP4Tool2.3\tools\x264.exe" --qp 24 --level 1.3 --ref 3 --mixed-refs --no-fast-pskip --no-cabac --subme 7 --analyse p8x8,b8x8,i4x4,p4x4 --me esa --thread-input --no-dct-decimate --psnr --ssim --output "%SRC%.264" "%SRC%.avs"
ECHO 视频处理完成
ECHO 转换AVS的音频文件为M4A...
"D:\GreenSoft\DVD.Tools\megui\tools\BePipe.exe" --script "Import(^%SRC%.avs^)" | "D:\GreenSoft\DVD.Tools\megui\tools\neroaacenc\neroAacEnc.exe" -br 96000 -lc -ignorelength -if - -of "%SRC%.m4a"
ECHO 音频处理完成
ECHO 合并视频音频...
"D:\GreenSoft\DVD.Tools\megui\tools\mp4box\MP4Box.exe" -fps 23.976 -add "%SRC%.264" "%SRC%.m4a" -out "%SRC%.mp4""
ECHO 删除视频临时文件...
IF EXIST "%SRC%.264" DEL "%SRC%.264"
ECHO 删除音频临时文件...
IF EXIST "%SRC%.m4a" DEL "%SRC%.m4a"
pause
[
Last edited by jasonwang on 2011-1-20 at 14:30 ]
作者: slore
时间: 2011-1-20 13:14
第8行 这个 “) ” 多余了吧
goto %2
%2的标签你定义了?
作者: jasonwang
时间: 2011-1-20 14:12
第8行的)是我复制错误了,%2确实没有定义,但和我的疑问没太大关系啊?兄弟知道如何解决吗?
作者: jasonwang
时间: 2011-1-20 14:28
""%SRC%.264" ""%SRC%.avs"
已经找到原因了,多复制了2个引号,改成下面这个就行了
"%SRC%.264" "%SRC%.avs"