Board logo

标题: [文件操作] 怎么实现 拖曳多个文件到批处理文件上,然后逐个排队执行命令? [打印本页]

作者: chncwk    时间: 2023-11-5 22:28     标题: 怎么实现 拖曳多个文件到批处理文件上,然后逐个排队执行命令?

两条命令,执行文件转换用的。
  1. "E:\Media\MP4Box\My MP4Box GUI\Tools\MP4Box.exe" -raw 2 "%1"
复制代码
  1. "E:\Media\MP4Box\My MP4Box GUI\Tools\MP4Box.exe" -add "%1" "%~n1.m4a"
复制代码

作者: pd1    时间: 2023-11-5 23:47

  1. @echo off
  2. :AA
  3. if not "%1" == "" (
  4. "E:\Media\MP4Box\My MP4Box GUI\Tools\MP4Box.exe" -raw 2 "%1"
  5. "E:\Media\MP4Box\My MP4Box GUI\Tools\MP4Box.exe" -add "%1" "%~n1.m4a"
  6. shift
  7. goto AA
  8. )
复制代码

作者: hfxiang    时间: 2023-11-6 09:41

回复 1# chncwk
  1. @echo off
  2. cd /d "%~dp0"
  3. for %%a in (%*) do (
  4. "E:\Media\MP4Box\My MP4Box GUI\Tools\MP4Box.exe" -raw 2 "%%~fa"
  5. "E:\Media\MP4Box\My MP4Box GUI\Tools\MP4Box.exe" -add "%%~fa" "%%~dpna.m4a"
  6. )
复制代码

作者: chncwk    时间: 2023-11-7 00:46

多谢楼上两位的代码,但我发现有个问题,
分别单独执行两行代码的,得到的m4a文件很小,只有原视频的1/10;
但连续执行后,得到的文件跟原视频基本是一样大的,甚至比原来的还大。
而aac文件阶段却都是很小的。
作者: pd1    时间: 2023-11-7 10:01

回复 4# chncwk


第二行代码执行的是原始文件。
分开执行,第二条代码执行的是你第一行处理完之后的文件吧
%*能拖拽10个以上的文件吗
作者: hfxiang    时间: 2023-11-7 10:03

回复 5# pd1

文件数不是问题,只要拖曳后命令行总长不超过8192个字节即可




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2