我使用Teraterm作为我的终端程序。我的问题是,只有在我参加teraterm计划时才能让我的脚本运行。如果我在另一个应用程序中,有没有办法让它进入teraterm?
脚本效果很好,请分享给使用teraterm的任何人。
我们总是使用在包含10.155.3.8的窗口标题中显示的相同服务器ip。该文字始终在标题中。
如何让它仅在teraterm中执行。我知道这是一个非常简单的问题但是我花了几天时间环顾四周,我们将非常感激。
如果你有任何基础教程网站我会非常感激。 我是一个编程新手。
::ttwa:: ; change teraterm window name to current device or state.
SetTitleMatchMode, 2 ;// allow partial window title matches
#IfWinActive, 156.99.121.173, 156.99.121.173
send !e
sleep 10
send s
send {enter 100}
sleep 100
Send {click 3}
send !s
sleep 10
Send w
sleep 10
send %clipboard%
sleep 100
;send {backspace}
sleep 10
send {enter}
send !e s {enter}
send {enter 10}
Clipboard :=
return
答案 0 :(得分:1)
有几种方法:
分配一个热键,您可以按这个热键来启动脚本:
^+F1::
.... send stuff
....
return
等待teraterm窗口出现(WinWait
)或变为活动状态(WinWaitActive
):
winwait, teraterm ; change to the actual window qualifications
.... send stuff
....
return
从您的脚本运行teraterm,因此您将运行脚本图标而不是直接运行teraterm:
run teraterm ; change to the actual path
winwait, teraterm ; change to the actual window qualifications
.... send stuff
....
return
答案 1 :(得分:1)
好。对我来说,你的脚本中已经有了答案。
来自此处的文档:#IfWinActive
创建上下文相关的热键和热字符串。这样的热键表演 根据窗口的类型,执行不同的操作(或根本不执行任何操作) 有效或存在。
您只需要让脚本执行该要求,而不是需要的顺序。
SetTitleMatchMode, 2
#ifWinActive, 156.99.121.173, 156.99.121.173 ;Assuming this is correct
::ttwa:: ; change teraterm window name to current device or state.
send !e
sleep 10
send s
send {enter 100}
sleep 100
Send {click 3}
send !s
sleep 10
Send w
sleep 10
send %clipboard%
sleep 100
;send {backspace}
sleep 10
send {enter}
send !e s {enter}
send {enter 10}
Clipboard :=
return
至于有关进一步了解AutoHotkey的建议,我强烈建议您从官方Tutorial开始。