SecureCRT脚本vbs,检测到more就输入空格的循环语句,检测不到就跳出循环继续下一步怎么写

自己写的语句While(crt.Screen.WaitForString("--More--",3)<>False)crt.Screen.Sendchr(32)WEnd结... 自己写的语句While (crt.Screen.WaitForString ("--More--",3)<>False)
crt.Screen.Send chr(32)
WEnd
结果一直重复这个不执行下一个语句,while里面无论怎么改都一样,要不直接不执行输入空格,要不就一直死循环,求大神帮忙写一下
展开
 我来答
allgoo
2015-03-08 · TA获得超过105个赞
知道小有建树答主
回答量:74
采纳率:0%
帮助的人:69.2万
展开全部

用你写的试试了一下,可以正确运行啊!

修改一下:crt.Screen.Synchronous = False  试试。

如果还不行,看看你的crt的版本。


#$language = "VBScript"
#$interface = "1.0"

crt.Screen.Synchronous = False

' This automatically generated script may need to be
' edited in order to work correctly.

Sub Main
crt.Screen.Send "cat .viminfo |more" & chr(13)
While crt.Screen.WaitForString ("--More--",3)
crt.Screen.Send chr(32)
WEnd
crt.Screen.Send "echo ok !" & chr(13)

End Sub
追问
找到原因了,crt.Screen.WaitForString这句是只读取正在显示出来的,执行这句之前显示的不会用来判断,我While (crt.Screen.WaitForString ("--More--",3)False)
crt.Screen.Send chr(32)
WEnd的下一句还是查找某个关键词,执行完循环后已经全部显示完了,所以找不到关键词一直就卡在那了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式