Bat批处理写运行exe文件怎么写?

比如说X:\下,进入CMD,用cd命令进入X:\目录,输入unyaffs.exe system.img稍等一会,system.img中的内容即可解包出来

请问下怎么才能用bat运行这些?我不会写= =

我就写了个这:
start unyaffs.exe system.img %1

不知道对不对,但是能运行,估计写法是错误的..请教高手帮忙.

第一步:准备好用于输入的文件list.txt,每次一行,形如:
20
100
"data.1.txt"
20
100
"data.2.txt"
保存为list.txt
注意,如果运行100次,每次输入3回,则list.txt应有300行。(输入内容有规律的话,也可以用批处理生成list.txt)

第二步:
(1)如果AA.exe本身是命令行程序的话,批处理文件a.bat这样写就可以了:
@echo off
(for /l %%i in (1,1,100) do AA.exe)<list.txt

(2)如果AA.exe是带有图形界面的程序的话,那就有点复杂了。我能想到的就是模拟按键输入,不知道还有没有其他好的方法。批处理文件a.bat如下:
@echo off
set cnt=100
set num=3
set "title=输入提示"
set time1=2
set time2=3
(for /l %%i in (1,1,%cnt%) do (
start "" AA.exe
ping -n %time1% 127.1 >nul
for /l %%j in (1,1,%num%) do (
set /p str=
setlocal enabledelayedexpansion
set "str=!str:"=""!"
mshta vbscript:clipboarddata.setdata("text","!str!"^)(close^)
endlocal
mshta vbscript:execute("document.write:With CreateObject(""Wscript.shell""):.AppActivate(""%title%""):.sendkeys(""^v~""):end with:self.close"^)
ping -n %time2% 127.1 >nul
)))<list.txt
exit

说明:
第二行cnt的值100:AA.exe要循环运行的次数。
第三行num的值3:AA.exe运行后会的输入次数。
第四行title的值"窗口标题":输入提示窗口的标题内容。这个是关键!如果提示窗口每次都不一样的话,这个批处理还需要修改一下。
第五行time1的值2:AA.exe启动完成所需的秒数。
第六行time2的值3:输入提示窗口相隔的秒数,最小为3。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-08-21
假定你的unyaffs.exe已经放在那个x:\目录下了,这样就行(以下内容保存为.bat文件)
@echo off
x:
cd \目录
unyaffs.exe system.img
pause
exit追问

1%如果加在system.img后面,有神马意义?

追答

没意义,批处理中确实有%0 %1 %2这种写法,表示的是bat后接的参数,举个例子,比如有一个sample.bat,你运行时用的是sample.bat cc1 cc2 cc3,那么在这个bat中就可以用%0来表示sample,%1就是cc1,%2是cc2依次类推

本回答被提问者采纳
第2个回答  2011-08-29
unyaffs.exe system.img
这就行了,批处理不用写start就自动运行start命令。
或者你可以去百度bat贴吧去学习一下。
第3个回答  2011-08-21
start unyaffs.exe system.img就可以了