SecureCRT使用vbs和python脚本批量执行

SecureCRT 工具是非常牛逼的,通过该工具也可以执行一些自动化任务的处理(与之前写的 《SecureCRT批量操作》 不是同一类型的自动化),比如自动连接服务器并执行相应的内应,将执行结果输出到文本或excel ,自动读取文件内的指令并执行等等,之前的老版本SecureCRT支持的脚本语言是vbs(自动录制的输出也是vbs),在新版本的SecureCRT中增加了对python语言的支持。这里就结果这两种语言,实现自动化在一台跳板机上对多台主机进行批量化的telnet某端口的测试处理。

一、需求

有一个IP列表文件,里面是一些无序列IP,如下:

10.211.57.56
10.211.57.57
200.200.3.52
10.211.57.134
10.211.57.140
200.200.3.51

现需要实现通过读取该文本内的相关IP,再自动化的通过zabbix用户(已通过sshzabbix命令实现自动化登陆)登陆,登陆后执行telnet进行端口测试。测试完成后,执行quit返回即可。

二、vbs实现

#$language = "VBScript"
#$interface = "1.0"
crt.Screen.Synchronous = True
' from www.361way.com <itybku@139.com>
' 根据IP逐台实现ssh登陆,telnet端口测试后,再退回原来的界面,并退出登陆
Sub Main
    Dim fso
    Set fso = CreateObject("Scripting.FileSystemObject")
    'Dim inputFile
    Set inputFile = fso.OpenTextFile("ip.txt")
    Do While inputFile.AtEndOfStream <> True
        ipadr = inputFile.ReadLine
        crt.Screen.Send "sshzabbix " & ipadr & chr(13)
        crt.Screen.WaitForString "zabbix"
        crt.Screen.Send "telnet 172.20.21.1 10100" & chr(13)
        crt.Screen.WaitForString "Escape"
        crt.Screen.Send "quit" & chr(13)
        crt.Screen.WaitForString "zabbix"
        crt.Screen.Send chr(4)
        crt.Screen.WaitForString "#"
        'crt.Sleep 5
    Loop
End Sub

vbs实现的SecureCRT更多功能可以参考如下页面:

scripting_essentials.pdf

Example Scripts for SecureCRT

vbsedit scripts(只参看代码,无需下载该工具,该工具并不十分好用)

三、python实现

# $language = "Python"
# $interface = "1.0"
# code from www.361way.com <itybku@139.com>
# 多台主机自动化telnet端口测试
def main():
	with open('ip.txt', 'r') as f:
	    for ipadr in f.readlines():
	        crt.Screen.Send("sshzabbix " + ipadr + "\n")
	        crt.Screen.WaitForString("zabbix")
	        crt.Screen.Send("telnet 172.20.21.1 10100 \n")
	        crt.Screen.WaitForString("Escape")
	        crt.Screen.Send("quit \n" )
	        crt.Screen.WaitForString("zabbix")
	        crt.Screen.Send("exit \n")
	        crt.Screen.WaitForString("#")
main()

从上面可以看出,使用python代码更清晰一些。不过遗憾的是,目前脚本录制还不支持python,只支持vbs 。

更多python脚本玩法也可以参考官方文档




本站的发展离不开您的资助,金额随意,欢迎来赏!

You can donate through PayPal.
My paypal id: itybku@139.com
Paypal page: https://www.paypal.me/361way

分类: windows 标签: , ,
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.