找回密码
 加入
搜索
查看: 1191|回复: 4

如何运行多句dos命令

[复制链接]
发表于 2009-4-18 00:46:41 | 显示全部楼层 |阅读模式
本帖最后由 jakykuang 于 2009-4-22 00:50 编辑

想用au3运行多句dos命令,如何实现,
例如:dos命令如下
sc   query  telnet| find "FAILED" > nul   
  if   %errorlevel%   EQU   0   (exit)   else   net   start   telnet
请问如何实现,这样运行可以吗,
RunWait(@ComSpec & ' /c sc  query  telnet| find "FAILED" > nul ', @SystemDir, @SW_HIDE)
        RunWait(@ComSpec & ' /c  if   %errorlevel%   EQU   0   (exit)   else   net   start   telnet', @SystemDir, @SW_HIDE)

运行出来好像有点问题,但一闪而过了,看不清
因为两个语句是有关联的,所以不知道在au3里应该怎样写

[ 本帖最后由 jakykuang 于 2009-4-18 01:01 编辑 ]
发表于 2009-4-18 01:01:34 | 显示全部楼层
看不懂你的这个变量是干嘛的
我运行多句dos命令的时候,用_rundos语句
_rundos xxxxxx1
_rundos xxxxxxx2
发表于 2009-4-18 04:50:49 | 显示全部楼层
开telnet...
%errorlevel%与上一条命令相关,这样当然不行。
两个办法:一是做批处理运行,二是用 & 连接多个命令。
sc  query  telnet| find "FAILED" > nul & if   %errorlevel%   EQU   0   (exit)   else   net   start   telnet
 楼主| 发表于 2009-4-22 00:34:47 | 显示全部楼层
明解,我用了批处理来判断,但感觉au3好
发表于 2009-4-22 22:35:19 | 显示全部楼层
sensel  回复在理
在测试时可用RunWait(@ComSpec & ' /K  这样出来的CMD不会自动关闭。。

如SENSEL所说,可把欲运行的多命令写到临时文件(.bat .cmd)运行之   或   用&连接符 运行。。。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-6-3 15:58 , Processed in 0.070806 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表