我正在使用'HTML Match'工具来比较两个HTML文件。由于我必须比较许多文件,因此我创建了一个类似于后续的批处理文件。例如,我只提供五组文件。
cd "C:\Program Files\HTML Match"
HTMLMATCH.EXE "D:\Raj\compare1\a1.html" "D:\Raj\compare2\a1.html" "D:\Raj\compare_res\a1.html"
HTMLMATCH.EXE "D:\Raj\compare1\a2.html" "D:\Raj\compare2\a2.html" "D:\Raj\compare_res\a2.html"
HTMLMATCH.EXE "D:\Raj\compare1\a3.html" "D:\Raj\compare2\a3.html" "D:\Raj\compare_res\a3.html"
HTMLMATCH.EXE "D:\Raj\compare1\a4.html" "D:\Raj\compare2\a4.html" "D:\Raj\compare_res\a4.html"
HTMLMATCH.EXE "D:\Raj\compare1\a5.html" "D:\Raj\compare2\a5.html" "D:\Raj\compare_res\a5.html"
当我在cmd提示符中执行此批处理文件时,只比较第一行,即只有'a1.html',并生成结果。然后执行停止。
答案 0 :(得分:102)
在您正在运行的命令前添加call
。
您也可以将其更改为for循环,因此:
FOR /L %i in (1,1,5) DO CALL HTMLMATCH.EXE D:\Raj\compare%i%\a%i%.html D:\Raj\compare%i%\a%i%.html D:\Raj\compare_res\a%i%.html
答案 1 :(得分:48)
问题的答案是写CALL HTMLMATCH.EXE
(以及其余参数)。
只需在批处理文件中的每个可执行命令前面使用CALL
。
答案 2 :(得分:0)
您不必在没有任何空格标记的地方插入引号。
试试:
HTMLMATCH.EXE D:\Raj\compare1\a1.html D:\Raj\compare2\a1.html D:\Raj\compare_res\a1.html
也许它会解决你的问题。
答案 3 :(得分:0)
我一直在寻找真正相似的东西,并尝试了所有答复,但终于找到了解决我问题的方法!
在我的脚本中,我想检查一个进程是否正在运行,如果没有运行,请启动它(一个.exe),然后检查另一个进程是否正在运行,如果没有运行,也要启动它(但请打开所有程序),然后问题是第一个.exe已启动,但由于正在等待进程结束而没有移至第二个。 终于可以通过 start 为我工作了,魔力随之而来...
/分开
它对我来说是:
start "program1" /separate program1.exe
other commands
我认为,在启动program1之后,由于一直在等待直到它被关闭而停止,所以这不会发生,因为我想让它保持打开状态。 现在以开始/ separate开始,继续其他命令。
我在another forum中找到了它,但事实是它是手册,/ separate用于在另一个内存空间中启动。