使用SecureCRT批处理备份所有交换机路由器配置脚本

合集下载

利用SecureCRT的脚本功能自动定时执行任务

利用SecureCRT的脚本功能自动定时执行任务

利⽤SecureCRT的脚本功能⾃动定时执⾏任务SecureCRT是⼀款仿真终端⼯具,常⽤来telnet到路由器或交换机上,它还⽀持VBscript和Jscript脚本。

下边讲述⼀种在WINDOWS下利⽤SecureCRT的脚本功能⾃动定时执⾏⼀些登录到路由器或交换机来执⾏的任务:1.写好要SecureCRT执⾏的脚本,可登录执⾏任何操作。

如se800.vbs,保存在d:\se800下。

内容附在最后。

2.写好启动SecureCRT执⾏脚本的批处理⽂件。

如add_cmd.bat,保存在d:\se800下内容如下:d:cd \se800"C:\Program Files\SecureCRT\SecureCRT.EXE" /T /SCRIPT se800.vbs3.在WINDOWS的控制⾯板的任务计划⾥增加任务,如在23:30执⾏add_cmd.bat,⼤功告成。

====================se800.vbs的内容:====================# $language = "VBScript"# $interface = "1.0"Function my_Date()dim y,m,d,h,mmDim nowDate,mytimenowDate=Now()mytime=time()y=Year(nowDate)m=Month(nowDate)d=Day(nowDate)h=hour(mytime)mm=minute(mytime)my_Date=y & "-" & m & "-" & dEnd FunctionSub mainDim fso, fHost,fCMDbsn,fCMDscs, strLineHost,strLineCommand,strLogfile,strArrayConst ForReading = 1Const Hostip=0Const user=1Const password=2Const superpwd=3Const hostname=0Const NodeType=4Const my_user="jhxsy"Const my_pass="2381654"Const ScriptPath="D:\se800\"Const LogPath="D:\se800\log\"Set fso = CreateObject("Scripting.FileSystemObject")Set fHost = fso.OpenTextFile(ScriptPath& "ip.txt", ForReading, 0) 'Do While fHost.AtEndOfStream <> Truecrt.Screen.Synchronous = TruestrLineHost = Trim(fHost.Readline ) '获取fhost⽂件中的⼀⾏,如192.168.0.9 null password en_pwd BASstrArray=split(strLineHost,vbtab,-1) '按tab将获取的⾏分割成⼀个数组strArray[0]=192.168.0.9 .... strArray[4]=BAS strLogfile=LogPath & strArray(hostname)& "-" & my_date() &".txt"crt.Session.LogFileName = strLogfilecrt.Session.Log Truecrt.Session.Connect "/telnet" & " " & strArray(Hostip) & vbcr 'telnet strArray[0] vbcr=回车crt.screen.waitforstring "login:"crt.screen.send my_user & vbcr 'strArray(user) & vbcrcrt.screen.waitforstring "assword:"crt.screen.send my_pass & vbcrIf strArray(NodeType)="BAS" ThenSet fCMDbsn=fso.OpenT extFile(ScriptPath& "cmd.txt", ForReading, 0) '如果是bas 打开cmd.txt⽂件并按forreading⽅式读取Do While fCMDbsn.AtEndOfStream <> True '如果没结束strLineCommand=Trim(fCMDbsn.Readline)'获取读取的⾏Do While strLineCommand="wait"'?不解crt.sleep 5000strLineCommand=Trim(fCMDbsn.Readline)Loopcrt.Screen.WaitforString "#"'等待出现超级权限的提⽰crt.Screen.Send strLineCommand & vbcr'发送命令Call CheckEnd()LoopSet fCMDbsn=nothingElseSet fCMDscs=fso.OpenT extFile(ScriptPath& "cmdscs.txt", ForReading, 0)Do While fCMDscs.AtEndOfStream <> TruestrLineCommand=Trim(fCMDscs.Readline)crt.Screen.WaitforString ">"crt.Screen.Send strLineCommand & vbcrcrt.Screen.Send "y" & vbcrLoopSet fCMDscs=nothingEnd If'Logout nodecrt.screen.waitforstring "#"'crt.Session.Log Falsecrt.screen.send " exit" & vbcr'Stop log file action'crt.screen.waitforstring "$"'crt.screen.send vbcrcrt.Session.Log False'crt.screen.send vbcrcrt.Session.Disconnectcrt.Screen.Synchronous = FalseLoopSet fso=nothingcrt.quitEnd SubSub CheckEnd()Do Until crt.Screen.WaitForString ("#" , 1)=Truecrt.Screen.Send " "Loopcrt.Screen.Send vbcrExit SubEnd Sub经常遇到需要对⼀批⽹络设备进⾏同⼀种操作的情况,⽐如备份,或者查找arp表等,⽤telnet⼀个个登上去看确实⽐较⿇烦,于是想到是否有⾃动化的办法来做,编程序太⿇烦改起来不⽅便,每天都在⽤securecrt这个软件做telnet客户端,有⼀次⽆意间在软件⽬录下发现⼀些脚本,原来securecrt也可以⽤脚本,于是有了下⾯这个脚本,⽤来⾃动登录到设备上去执⾏某个操作,并把屏幕内容记录到⽇志⽂件中供进⼀步处理。

SecureCRT批量操作指导书

SecureCRT批量操作指导书

文档名称 文档密级:
2013-4-16
华为机密,未经许可不得扩散 第1页, 共1页 SecureCRT 批量操作指导书
1、 打开批量操作窗口:Options->Global Options->Appearance->Show chat window
打勾,在屏幕下方会显示空白框
2、 鼠标右键单击空白框,选择“Send chat to all tabs ”,然后直接在<Send chat to all
tabs>提示符下输入命令,就可以在所有打开的设备上批量操作命令了。

如下图:在<Send chat to all tabs>提示符下输入命令“vmstat 1 10”,在SecureCRT 工具中登录的所有设备都会同时执“vmstat 1 10”命令:
3、
在执行批量操作前如果需要保存log 日志,则选择File->Log session
对于维护设备非常多的局点,使用本批量操作方法可以大幅度提高工作效率。

SecureCRT在网络设备配置管理中的实践应用

SecureCRT在网络设备配置管理中的实践应用

SecureCRT在网络设备配置管理中的实践应用作者:赵振涛来源:《科学与财富》2018年第30期摘要:本文论述了利用SecureCRT访问网络设备,自动保存访问记录,通过编写执行脚本实现对批量网络交换机配置的自动备份。

关键词:SecureCRT 脚本日志配置备份批处理SecureCRT是一款终端仿真软件,能够在Windows系统中登录UNIX、Linux的服务器主机以及网络设备,支持Telnet、SSH、Serial等多种连接协议,支持VBScript、Python脚本语言。

下面介绍在SecureCRT(ver 8.5)下创建连接会话、日志自动保存、脚本录制、批量自动备份网络设备配置。

1.创建连接会话File->Connect->New Session->SecureCRT Protocol选择Telnet->Host name输入设备IP地址-> SecureFX Protocol选择None->Session Name 输入会话名称->完成,方便以后登录。

2.日志自动保存Options->Global Options->General->Default Session->Edit Default Settings,将log file name 修改为%H_%S.log.log,自动记录每个操作,以主机名加会话名保存,方便查询。

3.脚本录制登录设备->Script->Start Recording Script->执行操作->(Script->Stop Recording Script),默认保存文件以.vbs结尾,其它网络设备执行同样操作命令时可通过Script->Run调用所录脚本一键完成所有操作。

4.批量自动备份网络设备配置首先确定备份哪些设备,其次建立TFTP服务器以接收上传的配置文件,最后需要编写调用备份脚本。

SecureCRT配置文件备份

SecureCRT配置文件备份

2、备份配置文件 进入上述配置文件目录,将里面的所有文件打包复制。
3、配置文件恢复 将步骤2中打包的文件解压到新安装SecureCRT软件的配置文件目录,或将其配置文件目录设置为备份的配置文件目录。
博客园 用户登录 代码改变世界 密码登录 短信登录 忘记登录用户名 忘记密码 记住我 登录 第三方登录/注册 没有账户, 立即注册
SecureCRT配 置 文 件 备 份
日常工作中,为了避免重装系统导致SecureCRT的相关配置(button ba置文件所在路径 打开SecureCRT软件,依次点击菜单栏下的Options-->Global Options-->General-->Configuration Paths

SecureCRT脚本的批量管理

SecureCRT脚本的批量管理

利用SecureCRT脚本,实现对N台服务器的批量管理SecureCRT是一款终端仿真程序,支持ssh、Telnet和rlogin协议,可以在windows平台通过它对unix、linux进行访问,相比同类软件,它的强大之处就在于支持vbs、js等脚本,利用脚本可实现批量操作,如:获取服务器相关信息、部署软件、修改密码、升级软件、上传/下载、修改文件等等,还能生成excel报表,最大的优点,就是无需在服务器端安装agent,这是其他软件无法与之相媲美的,当初在给工行做项目的时候,在3000多台服务器上部署软件,用的就是SecureCRT脚本。

下面分享一个例子:该脚本用vbs语言编写,脚本会读取iplist文件,通过ssh方式连接服务器,在centos5.5_64bit系统上自动安装lrzsz软件,脚本对目标服务器进行了判断,如已经安装lrzsz软件则退出,否则执行安装程序。

SecureCRT-vbs脚本使用说明一.脚本运行环境1. 需要在客户端安装SecrueCRT软件二.脚本使用方法1.打开SecureCRT,不连接任何会话2.选择脚本菜单----执行,选择你要运行的脚本,如弹出下面的提示,选择接受并保存。

3.脚本执行过程中,最好不要进行其他操作,脚本执行完后会自动退出三.自动安装脚本参数介绍:outputpath = ".\install-log.txt" '输出文件,脚本运行后会自动创建iplistpath = ".\ip.txt" 'ip列表文件,需提前创建,每行有2列,用1个空格作为分隔符,首尾不能有多余的空格或其他字符,iplist格式如下:192.168.0.1 123456192.168.0.2 abcd1234loginuser = "root" '登陆用户productpath = "/usr/local/src" '产品路径,可自行定义Ssh、Main部分都已写成函数,一般情况下无需更改。

SecureCRT批量备份路由器设置

SecureCRT批量备份路由器设置

在日常工作中,可能面临几百台网络设备的管理,如何高速可靠的对这些设备进行管理备份下面以华为H3C为例:实测1百多台设备非常高效且容错效果好不易中断,耗时几分钟即对所有路由器配置进行了备份给出的示例脚本并非网上所流传的VBS脚本,而是用python编写的脚本,进行了大量容错处理与测试。

具有如下特点:1、在log目录下自动建立当前日期命名的文件夹,用于存放导出的配置文件2、在log目录下自动生成当前日期命名的日志文件,记录操作失败的设备3、对于不能成功连接的设备或登录失败的设备,会自动跳过,不影响后续操作,不会卡在中间,不会造成批量操作中断4、首先使用列表中用户名和密码尝试登录,若失败,则尝试使用列表中的用户名和”123456”(可在脚本中自己修改)进行登录脚本运行准备工作:1、首先建立如下目录: d:\h3cbackup\log ,此目录可配合脚本修改成其它目录2、建立list设备列表文件,文件类型为文本文件,每行为1台设备相关信息,用空格分割,如下:IP地址用户名密码192.168.1.1admin123321192.168.1.2root321123―――――――这里是分割线,下面是脚本――――――――――――――复制分割线间的内容到记事本,修改扩展名为py――――# $language = "Python"# $interface = "1.0"#本脚本用途:从一个文件里面自动读取设备IP地址,密码等,自动将设备配置备份import datetimeimport os#获取当前系统日期并格式化日期格式为YYYYMMDDtoday = datetime.date.today()monthStr="{0:02}".format(today.month)dayStr="{0:02}".format(today.day)todayStr=str(today.year)+monthStr+dayStr#打开保存设备管理地址密码列表文件filePath=crt.Dialog.FileOpenDialog("请选择设备列表文件","打开","list.txt","(*.txt)|*.txt")listfile=open(filePath,"r")crt.Screen.Synchronous = True#创建日志文件,记录操作失败设备列表logfile=open("d:\\h3cbackup\\log\\"+todayStr+".txt","w+") #在log目录下自动创建日期命名的文件夹path="d:\\h3cbackup\\log\\"+todayStrif os.path.exists(path)==False:os.mkdir(path)#numSuc记录成功操作个数,numFai记录操作失败个数numSuc=0numFai=0#读出每行,循环操作for line in listfile:#如果遇到只有换行符无内容的行直接跳过if line=="\n":continue#分离每行的参数IP地址用户名密码超级密码params=line.split()#Telnet到这个设备上并判断是否连接成功errcode = 0try:crt.Session.Connect("/TELNET "+params[0]) except ScriptError:errcode = crt.GetLastError()if errcode != 0:#连接失败跳过后续代码进入下次循环logfile.write("连接失败:"+params[0]+"\n")numFai+=1continueelif crt.Session.Connected:r=crt.Screen.WaitForStrings(['login:','Username:'],1)crt.Screen.Send(params[1]+"\r")crt.Screen.WaitForString('Password:',1)if r==1:crt.Screen.Send(params[2]+"\r")if r==2:crt.Screen.Send("123456\r")if crt.Screen.WaitForString(">",2)==False:crt.Screen.WaitForStrings(['login:','Username:'],10)crt.Screen.Send(params[1]+"\r")crt.Screen.Send(params[2]+"\r")#备份目前runing-config配置crt.Session.LogFileName = path+"\\" + params[0] + ".txt"if crt.Session.Logging==False:crt.Session.Log(True)crt.Screen.Send("dis cu\r")while crt.Screen.WaitForString("---- More ----",2):crt.Screen.Send(" ")#备份完成后退出if crt.Screen.WaitForString("return",1):crt.Screen.Send(" ")crt.Session.Disconnect()numSuc+=1else:logfile.write("未知原因:"+params[0]+"\n")numFai+=1logfile.close()crt.Screen.Synchronous = Falsecrt.Dialog.MessageBox("操作完毕\n共:"+str(numSuc)+"个设备操作成功\n共:"+str(numFai)+"个设备操作失败","",64|0)―――――――――这里是分割线――――――――――结束如不是以return 结束,可以自行修改这里的关键字if crt.Screen.WaitForString("return",1):想偷懒的赶紧试试吧附:Crt脚本运行方法,打开CRT软件―〉选择Script-〉选择脚本文件-〉选择设备列表list文件-〉等待运行结束查看结果。

傻瓜操作SecureCRT软件实现思科、华为交换机自动备份

傻瓜操作SecureCRT软件实现思科、华为交换机自动备份

傻瓜操作SecureCRT软件实现思科、华为交换机自动备份无需脚本通过SecureCRT软件实现思科、华为交换机全备份首先下载中文版的SecureCRT5."1,中文版更方便操作,没有中文版的也没关系,我会图示例出。

打开SecureCRT5."1软件,新建一个交换机连接(新建应该会的吧,要是用中文版的很简单的)-----点击这个新建的连接-再点下会话选项如图1-1 1-1出现会话选项—连接---点击登录脚本,把自动登录勾打上,期望其实解释是指当登入界面出现什么时,所以期望后面的框,这里大家可以根据自身交换机来填,发送:这个后面填命令,例:期望:password:发送:这里输入密码(当出现password:时输入对应的密码),如图1-2如果觉得要输入的命令太少了,这也没关系,不过要用脚本了,把登录脚本的勾打上,选择脚本文件。

脚本文件:# $language = "VBScript"# $interface = "1.0"Sub Maincrt.Screen.WaitForString "AA"crt.sleep 2000crt.Screen.Send "BB" & VbCrcrt.sleep 2000crt.Screen.Send "CC" & VbCrEnd Sub将以上脚本文件保存在TXT记事本里,保存vbs格式。

注:脚本中AA需根据实际情况输入命令,crt.Screen.WaitForString 这段是指当出现什么命令时BB和CC根据实际情况输入自已的命令1-2接下来就是选择保存的日志--------点击日志文件------取个交换机名保存即可,在连接上启动记录这里要打个勾。

如图1-31-3OK,这样就可以了,以后双击交换机连接,自动运行命令,里面的内容自动保存,不管是CISCO和华为交换机都可以通过这个方法自动备份,傻瓜操作,无需脚本。

securecrt使用教程、SecureCRT配置详细图文教程

securecrt使用教程、SecureCRT配置详细图文教程

securecrt使用教程、SecureCRT配置详细图文教程Secure CRT是一款支持SSH2、SSH1、Telnet、Telnet/SSH、Relogin、Serial、TAPI、RAW 等协议的终端仿真程序,最吸引我的是,SecureCRT 支持标签化SSH 对话,从而可方便地管理多个SSH 连接,设置项也极为丰富。

简单的说是Windows下登录UNIX、Linux服务器主机的软件。

SecureCRT支持SSH,同时支持Telnet和rlogin协议。

SecureCRT是一款用于连接运行包括Windows、UNIX、VMS的理想工具。

通过使用内含的VCP命令行程序可以进行加密文件的传输。

有流行CRT Telnet客户机的所有特点,包括:自动注册、对不同主机保持不同的特性、打印功能、颜色设置、可变屏幕尺寸、用户定义的键位图和优良的VT100、VT102、VT220、ANSI竞争,能从命令行中运行或从浏览器中运行,其它特点包括文本手稿、易于使用的工具条、用户的键位图编辑器、可定制的ANSI颜色等.SecureCRT的SSH协议支持DES,3DES和RC4密码和密码与RSA鉴别。

1、SecureCRT下载2、SecureCRT 配置颜色直接修改全局选项,以免每加个服务器都要重新设置一次:全局设置:键盘方案的选择:终端——》仿真终端选择“Linux”,勾选“ANSI颜色” 和“使用颜色方案”,终端颜色配置请见下面后续...字体的配置:终端——》外观注意颜色方案选“白/ 黑”,设置字体大小:字体(F)如果出现中文乱码,修改上面的“字符编码(H)“,一般为”UTF-8“注意下面的字符集一定要选择“中文GB2312 ”:(中文选用,英文不必)配置完后,登录终端默认颜色如下:目录颜色与底色(黑色)非常相近,不易看清终端全局颜色设置:<Options ——》Global Options ——》Terminal ——》Appearance ——》ANSI Color 设置"Bold Colors" 蓝色的颜色为自己喜欢的清晰颜色,如下图:配出来的效果:注:shell 脚本中的颜色,也会由深蓝色变为上面的淡蓝色,如下图:SecureCRT连接后如果稍长时间不用就会掉线,往往会造成工作状态的丢失。

怎样使用securecrt建立与路由器的连接

怎样使用securecrt建立与路由器的连接

怎样使用securecrt建立与路由器的连接
SecureCRT是一款支持SSH的终端仿真程序,同时支持T elnet和rlogin协议。

相比使用系统自带的命令提示符中的telnet命令,SecureCRT具有更强大的功能。

下面是店铺收集整理的怎样使用securecrt建立与路由器的连接,希望对大家有帮助~~
使用securecrt建立与路由器的连接
工具
SecureCRT
Tomato系统的路由器一台
步骤/方法
打开SecureCRT,点击主界面的工具栏的“文件”,选择"快速连接"。

在快速连接的设置对话框里,协议选用“SSH2”,”主机名“填自己路由器的IP地址。

(默认192.168.1.1),端口不用改保持22,用户民填登陆路由器的用户名(默认admin)。

然后点击“连接”。

在下图对话框中,输入自己登录路由器的密码(默认admin),勾上“保存密码”,完成按“确定”。

注意到连接有一个绿色的勾,也看到自己路由器的名称,证明已经成功连接上路由器了。

关闭SecureCRT,再次打开SecureCRT是,我们就可以看到已经保存的连接,直接点击连接名即可连接,不用再进行新建了。

基于SecureCRT的网络设备配置批量备份实践

基于SecureCRT的网络设备配置批量备份实践

操作 的网络设 备相关 信息。 由于不同厂商的设
备, 配置语言略有 区别 , 配置文件除了记录设备I P 地址
c a s e’ ’ CI S CO”
外, 还须记录设备品牌 , 最后通过脚本遍历 配置文件,
逐—对每台设备进行操作。 ‘ 配置文件格式 : 设备品牌+ 设备I P
‘ CI S CO x x . X X . x x . x x ‘ H3 C X X . X X . X X . x x
C I S C O ( i p )
c a s e e l s e
‘ 调用对思科设备操作过程
Ms g B o x” 设备类 型未知: ” &p a r a m s ( O 1 &” ! ”
e n d s e l e c t l o o p
‘ 打开保存设备管理地址以及密码的文件
‘ l o g


Di m f s o , il f e l , l i n e , s t r l , p a r a ms
d i r 为日志保存路径

S e t f s o :C r e a t e O b j e c t ( ” S c r i p t i n g . F i l e S y s t e m O b j e e t ” 、

2 01 4 年 ・ 第5 期
栏 目编辑 :罗锦莉 E - ma i l : l u o l 0 2 5 0 0 @1 6 3 c o m
c r t . S c r e e n . S e n d v b c r
c r t . S c r e e n . Wa i t F o r S t r i n g’ ’ b y t e s / s e c ) ”

使用SecureCRT批处理备份所有交换机路由器配置脚本

使用SecureCRT批处理备份所有交换机路由器配置脚本

使用SecureCRT比处理备份所有交换机路由器配置脚本小弟测试了SecureCRT脚本批量执行备份cisco交换机或者路由器配置文件的功能。

测试通过(成功批量备份28 台交换机,时间小于 1 分钟)。

此脚本可以根据你的需要修改,改成其他功能,希望有需要的同学扩展思路。

使用SecureCRT比处理备份所有交换机配置的脚本,使用方法:1、在D盘新建一个文件夹,命名为SWbackup打开文件夹,新建一个文本文件list.txt,编辑并保存这个文本文件,每行输入3列分别是:交换机ip 密码enable 密码;例如:192.168.1.1cisco cisco192.168.1.2cisco cisco(有多少交换机就写多少行)2、新建一个文本文件,将下面的代码(两条分割线内的内容,不包括分割线)复制到文本文件内,保存关闭。

将文本文件重命名为:备份所有交换机配置批处理脚本.vbs (注意要现显示文件后缀名才能修改)---------- # $language = "VBScript"# $interface = "1.0"'本脚本示范:从一个文件里面自动读取设备IP 地址,密码等,自动将设备配置备份Sub Main'打开保存设备管理地址以及密码的文件Const ForReading = 1, ForWriting = 2, ForAppending = 8Dim fso,file1,line,str1,paramsSet fso = CreateObject("Scripting.FileSystemObject")Set file1 = fso.OpenTextFile("d:\SWbackup\list.txt",Forreading, False) crt.Screen.Synchronous = True DO While file1.AtEndOfStream <> True'读出每行line = file1.ReadLine'分离每行的参数IP地址密码En密码params = Split (line)crt.session.LogFileName = "d:\SWbackup\log\\" & params(0) & ".txt"crt.session.Log(true)crt.Session.Connect "/TELNET " & params(0)crt.Screen.WaitForString "Password:"crt.Screen.Send params(1) & vbcr'进特权模式crt.Screen.Send "enable" & vbcrcrt.Screen.WaitForString "Password:"crt.Screen.Send params (2) & vbcr crt.Screen.waitForString "#"' 备份目前runing-config 配置str1 = "show run"crt.Screen.Send str1 & vbcr crt.Screen.WaitForString " --More-- "crt.Screen.Send"" & vbcr'备份完成后退出crt.Screen.waitForString "!" & vbcrlf & "end"crt.Session.Disconnectloopcrt.Screen.Synchronous = FalseEnd Sub'list.txt 需要先做好。

利用SecureCRT的脚本功能自动定时执行任务

利用SecureCRT的脚本功能自动定时执行任务

SecureCRT是一款仿真终端工具,常用来telnet到路由器或交换机上,它还支持VBscript和Jscript脚本。

下边讲述一种在WINDOWS下利用SecureCRT的脚本功能自动定时执行一些登录到路由器或交换机来执行的任务:1.写好要SecureCRT执行的脚本,可登录执行任何操作。

如se800.vbs,保存在d:\se800下。

内容附在最后。

2.写好启动SecureCRT执行脚本的批处理文件。

如add_cmd.bat,保存在d:\se800下内容如下:d:cd \se800"C:\Program Files\SecureCRT\SecureCRT.EXE" /T /SCRIPT se800.vbs3.在WINDOWS的控制面板的任务计划里增加任务,如在23:30执行add_cmd.bat,大功告成。

====================se800.vbs的内容:====================# $language = "VBScript"# $interface = "1.0"Function my_Date()dim y,m,d,h,mmDim nowDate,mytimenowDate=Now()mytime=time()y=Year(nowDate)m=Month(nowDate)d=Day(nowDate)h=hour(mytime)mm=minute(mytime)my_Date=y & "-" & m & "-" & dEnd FunctionSub mainDim fso, fHost,fCMDbsn,fCMDscs, strLineHost,strLineCommand,strLogfile,strArrayConst ForReading = 1Const Hostip=0Const user=1Const password=2Const superpwd=3Const hostname=0Const NodeType=4Const my_user="jhxsy"Const my_pass="2381654"Const ScriptPath="D:\se800\"Const LogPath="D:\se800\log\"Set fso = CreateObject("Scripting.FileSystemObject")Set fHost = fso.OpenTextFile(ScriptPath& "ip.txt", ForReading, 0) 'Do While fHost.AtEndOfStream <> Truecrt.Screen.Synchronous = TruestrLineHost = Trim(fHost.Readline ) '获取fhost文件中的一行,如192.168.0.9 null password en_pwd BASstrArray=split(strLineHost,vbtab,-1) '按tab将获取的行分割成一个数组strArray[0]=192.168.0.9 .... strArray[4]=BAS strLogfile=LogPath & strArray(hostname)& "-" & my_date() &".txt"crt.Session.LogFileName = strLogfilecrt.Session.Log Truecrt.Session.Connect "/telnet" & " " & strArray(Hostip) & vbcr 'telnet strArray[0] vbcr=回车crt.screen.waitforstring "login:"crt.screen.send my_user & vbcr 'strArray(user) & vbcrcrt.screen.waitforstring "assword:"crt.screen.send my_pass & vbcrIf strArray(NodeType)="BAS" ThenSet fCMDbsn=fso.OpenT extFile(ScriptPath& "cmd.txt", ForReading, 0) '如果是bas 打开cmd.txt文件并按forreading方式读取Do While fCMDbsn.AtEndOfStream <> True '如果没结束strLineCommand=Trim(fCMDbsn.Readline)'获取读取的行Do While strLineCommand="wait"'?不解crt.sleep 5000strLineCommand=Trim(fCMDbsn.Readline)Loopcrt.Screen.WaitforString "#"'等待出现超级权限的提示crt.Screen.Send strLineCommand & vbcr'发送命令Call CheckEnd()LoopSet fCMDbsn=nothingElseSet fCMDscs=fso.OpenT extFile(ScriptPath& "cmdscs.txt", ForReading, 0)Do While fCMDscs.AtEndOfStream <> TruestrLineCommand=Trim(fCMDscs.Readline)crt.Screen.WaitforString ">"crt.Screen.Send strLineCommand & vbcrcrt.Screen.Send "y" & vbcrLoopSet fCMDscs=nothingEnd If'Logout nodecrt.screen.waitforstring "#"'crt.Session.Log Falsecrt.screen.send " exit" & vbcr'Stop log file action'crt.screen.waitforstring "$"'crt.screen.send vbcrcrt.Session.Log False'crt.screen.send vbcrcrt.Session.Disconnectcrt.Screen.Synchronous = FalseLoopSet fso=nothingcrt.quitEnd SubSub CheckEnd()Do Until crt.Screen.WaitForString ("#" , 1)=Truecrt.Screen.Send " "Loopcrt.Screen.Send vbcrExit SubEnd Sub经常遇到需要对一批网络设备进行同一种操作的情况,比如备份,或者查找arp表等,用telnet一个个登上去看确实比较麻烦,于是想到是否有自动化的办法来做,编程序太麻烦改起来不方便,每天都在用securecrt这个软件做telnet客户端,有一次无意间在软件目录下发现一些脚本,原来securecrt也可以用脚本,于是有了下面这个脚本,用来自动登录到设备上去执行某个操作,并把屏幕内容记录到日志文件中供进一步处理。

SecureCRT配置路由器相关命令

SecureCRT配置路由器相关命令

SecureCRT配置路由器相关命令[ 2008-4-24 11:17:00 | By: yujh ]SecureCRT配置路由器主机名:主机IP用户名:root密码:密码*************显示当前非法网址*************more yellow.list 回车按空格键下翻*************插入新记录*************vi yellow.list 回车按i键,提示insert,回车即可输入或删除记录*************保存操作*************按ESC,insert消失。

此时输入 :wq! 回车*************让设置生效*************service squid restart 回车*************如果要修改密码*************passwd root 回车输入密码再次确认*************如果要删除某条记录*************vi /etc/squid/yellow.list 编辑yellow.list/filename 将光标定位到某记录dd 删除该行记录*************重建yellow.list*************rm -rf /etc/squid/yellow.list 删除yellow.list touch /etc/squid/yellow.list 新建yellow.listvi /etc/squid/yellow.list 再次编辑yellow.list附:vi命令一览表文本编辑器是所有计算机系统中最常用的一种工具。

UNIX下的编辑器有ex,sed和vi等,其中,使用最为广泛的是vi,而vi命令繁多,以下稍做总结,以资共享。

进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filenamevi filename....filename :打开多个文件,依次进行编辑移动光标类命令h :光标左移一个字符l :光标右移一个字符space:光标右移一个字符Backspace:光标左移一个字符k或Ctrl+p:光标上移一行j或Ctrl+n :光标下移一行Enter :光标下移一行w或W :光标右移一个字至字首b或B :光标左移一个字至字首e或E :光标右移一个字至字尾) :光标移至句尾( :光标移至句首}:光标移至段落开头{:光标移至段落结尾nG:光标移至第n行首n+:光标下移n行n-:光标上移n行n$:光标移至第n行尾H :光标移至屏幕顶行M :光标移至屏幕中间行L :光标移至屏幕最后行0:(注意是数字零)光标移至当前行首$:光标移至当前行尾屏幕翻滚类命令Ctrl+u:向文件首翻半屏Ctrl+d:向文件尾翻半屏Ctrl+f:向文件尾翻一屏Ctrl+b;向文件首翻一屏nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。

SecureCRT批量备份不同型号交换机说明及脚本配置

SecureCRT批量备份不同型号交换机说明及脚本配置

shebei.txt为设备IP地址等信息shebei.txt格式如下设备名称登录帐号登录密码超级密码IP 端口Telnet 设备型号XXX交换机123 **** **** 192.168.1.1 23 Telnet 3300在做CRT脚本的时候,不同的设备获取配置文件的命令稍微有些不通,所以这个脚本做了设备型号的判断。

(这个案例是以华为的设备为例,如果网络中存在思科或者中兴等设备可以对脚本稍作修改即可)# $language = "VBScript"# $interface = "1.0"'==========================================================================' NAME: Backup Of IP-MAN' AUTHOR: LiuBin'==========================================================================Sub MainConst DEVICE_FILE_PATH = "shebei.txt"Dim fsoSet fso = CreateObject("Scripting.FileSystemObject")Dim filSet fil = fso.OpenTextFile(DEVICE_FILE_PATH)Dim ipDim nameDim protocolDim lineDim cnxnStringWhile Not fil.AtEndOfStreamline = fil.ReadLinename = Split(line, " ")(0)username =Split(line, " ")(1)password =Split(line, " ")(2)super =Split(line, " ")(3)ip = Split(line, " ")(4)port = Split(line, " ")(5)protocol = Split(line, " ")(6)devicetype = Split(line, " ")(7)Select Case protocolCase "Telnet"cnxnString = "/TELNET " & ip & " "& portEnd Select'Logcrt.Session.LogFileName = "E:\\easy\\备份\\"+name+" "+ip+".log"‘备份的目标地址crt.Session.Log True' Connectcrt.Screen.Synchronous = TrueOn Error Resume Nextcrt.session.Connect cnxnStringIf Err.Number<>0 Thencrt.Session.Log "Connect failed"crt.Screen.Synchronous = Falsecrt.Session.Log Falseelseif devicetype="9306" or devicetype="9303" or devicetype="8505" or devicetype="3928" or devicetype="3528" or devicetype="2300" then‘判断设备型号crt.Screen.WaitForString "Username:"crt.Screen.Send username & vbCrcrt.Screen.WaitForString "Password:"crt.Screen.Send password & vbCrcrt.Screen.WaitForString ">"crt.Screen.Send "super" & vbCrcrt.Screen.WaitForString " Password:"crt.Screen.Send super & vbCrcrt.Screen.WaitForString ">"crt.Screen.Send "dis cu" & chr(13)crt.Screen.Send " "‘这个是发送空格,就是交换机打dis cu的时候需要打空格或者回车才会显示另外一页crt.Screen.Send chr(13)crt.Screen.WaitForString ">"crt.Screen.Send "quit" & chr(13)crt.Screen.Synchronous = Falsecrt.Session.Disconnectcrt.Session.Log Falseelseif devicetype="3300" thencrt.Screen.WaitForString "Username:"crt.Screen.Send username & vbCrcrt.Screen.WaitForString "Password:"crt.Screen.Send password & vbCrcrt.Screen.WaitForString ">"crt.Screen.Send "dis cu" & chr(13)crt.Screen.Send " "crt.Screen.Send chr(13)crt.Screen.WaitForString ">"crt.Screen.Send "quit" & chr(13)crt.Session.Log falsecrt.Session.Disconnect()elseif devicetype="ME60" thencrt.Screen.WaitForString "Password:"crt.Screen.Send password & vbCrcrt.Screen.WaitForString ">"crt.Screen.Send "super" & vbCrcrt.Screen.WaitForString " Password:"crt.Screen.Send super & vbCrcrt.Screen.WaitForString ">"crt.Screen.Send "dis cu" & chr(13)crt.Screen.Send " "crt.Screen.Send chr(13)crt.Screen.WaitForString ">"crt.Screen.Send "quit" & chr(13)crt.Screen.Synchronous = Falseend ifEnd IfWendfil.CloseEnd Sub。

SecureCRT配置路由器相关命令

SecureCRT配置路由器相关命令

SecureCRT配置路由器相关命令[ 2008-4-24 11:17:00 | By: yujh ]SecureCRT配置路由器主机名:主机IP用户名:root密码:密码*************显示当前非法网址*************more yellow.list 回车按空格键下翻*************插入新记录*************vi yellow.list 回车按i键,提示insert,回车即可输入或删除记录*************保存操作*************按ESC,insert消失。

此时输入 :wq! 回车*************让设置生效*************service squid restart 回车*************如果要修改密码*************passwd root 回车输入密码再次确认*************如果要删除某条记录*************vi /etc/squid/yellow.list 编辑yellow.list/filename 将光标定位到某记录dd 删除该行记录*************重建yellow.list*************rm -rf /etc/squid/yellow.list 删除yellow.list touch /etc/squid/yellow.list 新建yellow.listvi /etc/squid/yellow.list 再次编辑yellow.list附:vi命令一览表文本编辑器是所有计算机系统中最常用的一种工具。

UNIX下的编辑器有ex,sed和vi等,其中,使用最为广泛的是vi,而vi命令繁多,以下稍做总结,以资共享。

进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filenamevi filename....filename :打开多个文件,依次进行编辑移动光标类命令h :光标左移一个字符l :光标右移一个字符space:光标右移一个字符Backspace:光标左移一个字符k或Ctrl+p:光标上移一行j或Ctrl+n :光标下移一行Enter :光标下移一行w或W :光标右移一个字至字首b或B :光标左移一个字至字首e或E :光标右移一个字至字尾) :光标移至句尾( :光标移至句首}:光标移至段落开头{:光标移至段落结尾nG:光标移至第n行首n+:光标下移n行n-:光标上移n行n$:光标移至第n行尾H :光标移至屏幕顶行M :光标移至屏幕中间行L :光标移至屏幕最后行0:(注意是数字零)光标移至当前行首$:光标移至当前行尾屏幕翻滚类命令Ctrl+u:向文件首翻半屏Ctrl+d:向文件尾翻半屏Ctrl+f:向文件尾翻一屏Ctrl+b;向文件首翻一屏nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。

SecureCRT登录对多台H3C设备进行配置自动备份

SecureCRT登录对多台H3C设备进行配置自动备份

版权说明Copyright ©2006-2007 杭州华三通信技术有限公司及其许可者 版权所有,保留一切权利。

未经本公司书面许可,任何单位和个人不得擅自摘抄、复制本书内容的部分或全部,并不得以任何形式传播。

H3C 、、Aolynk 、、H 3Care 、、TOP G 、、IRF 、NetPilot 、Neocean 、NeoVTL 、SecPro 、SecPoint 、SecEngine 、SecPath 、Comware 、Secware 、Storware 、NQA 、VVG 、V 2G 、V n G 、PSPT 、XGbus 、N-Bus 、TiGem 、InnoVision 、HUASAN 、华三均为杭州华三通信技术有限公司的商标。

对于本手册中出现的其它公司的商标、产品标识及商品名称,由各自权利人拥有。

保密承诺本次服务中获取客户的保密信息仅用于H3C 公司向客户交付涉及H3C 解决方案与产品服务(网络规划、设计、实施、运维、优化)。

未经客户同意,H3C 公司承诺对保密信息不用于其他与客户服务无关的用途,不向任何与客户服务无关的第三方披露。

Any Confidential Information acquired in service will be used by H3C for the solely purpose of providing solutions and products service (networkarchitecture, design, execute, running and maintenance, and optimization). Without the consent of customer, H3C shall not use the ConfidentialInformation in any way that is not related to Customer’s service, or disclose to any third party that is not relevant to Customer’s service.杭州华三通信技术有限公司Un Re gi st er ed使用SecureCRT 登录对多台H3C 设备进行配置自动备份版本建议:SecureCRT 版本用6.2以上版本 使用范围:该文档适用于H3C 网络设备一、 对于采用用户名-密码或用户名-密码-超级密码的情形。

如何使用SecureCRT导出华为,思科设备配置

如何使用SecureCRT导出华为,思科设备配置

如何使用Secure CRT导出华为,思科设备配置
华为,思科的网络设备配置,是需要经常备份,以防特殊情况丢失。

下面是店铺收集整理的如何使用Secure CRT 导出华为,思科设备配置,希望对大家有帮助~~
使用Secure CRT 导出华为,思科设备配置的方法
工具/原料
Secure CRT
方法/步骤
为了方便举例,使用一台装有 LINUX 的机器说明
连接上设备进入就要看设备配置的地方,可以先输入命令,但是不要按回车
点击文件--会话日志
不要选择原始回话日志,这样会把你输入的空格和显示出来的类似“press any key to continue" 或者 --More-- 也放进去,这样就不美观,而且段落不连贯看起也费劲
选择保存日志的名字和路径,通常日志的扩展名都是 .log, 这个暂时不要改,你可以之后改成TXT,或是其它文档格式。

点击保存
现在开始输入查看配置的命令,华为,H3C简写为dis cu ,思科为 sh run
因为有的配置很长,所以要不停的敲击空格键,直至出现提示符完毕
现在就不要输其它命令了,现在取消会话日志选项
到刚才保存路径查看下刚才保存的配置,在Secure CRT下会分段的地方,不粗现分段了,也没有--MORE-- 提示,和按了空格的提示
如何使用Secure CRT 导出华为,思科设备配置。

使用 SecureCRT 批处理备份锐捷交换机配置脚本

使用 SecureCRT 批处理备份锐捷交换机配置脚本

使用SecureCRT 批处理备份锐捷交换机配置脚本已测试了SecureCRT 脚本批量执行备份锐捷交换机配置文件的功能。

此脚本可以根据你的需要修改,改成其他功能,希望有需要的同学扩展思路。

使用SecureCRT 批处理备份所有交换机配置的脚本,使用方法:1、在 C 盘新建一个文件夹,命名为SW_bak,打开文件夹,新建一个文本文件swlist.txt,编辑并保存这个文本文件.每行输入4 列分别是:交换机IP 用户名密码enable密码;例如:192.168.11.1 root password password192.168.12.1 root password password(有多少交换机就写多少行)2、新建一个文本文件,将下面的代码(两条分割线内的内容,不包括分割线)复制到文本文件内,保存关闭。

将文本文件重命名为:备份交换机配置批处理.vbs# $language ="VBScript"# $interface = "1.0"'本脚本示范:从一个文件里面自动读取设备IP 地址,密码等,自动将设备配置备份Sub Main'打开保存设备管理地址以及密码的文件Const ForReading = 1, ForWriting = 2, ForAppending = 8Dim fso,file1,line,str1,paramsSet fso = CreateObject("Scripting.FileSystemObject")Set file1 = fso.OpenTextFile("c:\ SW_bak\swlist.txt ",Forreading,False)crt.Screen.Synchronous = TrueDO While file1.AtEndOfStream <> True'读出每行line = file1.ReadLine'分离每行的参数交换机IP 用户名密码enable密码;params = Split (line)crt.session.LogFileName = " c:\ SW_bak\log\20120713\" & params(0) & ".txt"crt.session.Log(true)'Telnet 到这个设备上crt.Session.Connect "/TELNET " & params(0)'输入Username 密码crt.Screen.WaitForString " Username:"crt.Screen.Send params(1) & vbcr'输入telnet 密码crt.Screen.WaitForString "Password:"crt.Screen.Send params(2) & vbcr'进特权模式crt.Screen.Send "enable" & vbcrcrt.Screen.WaitForString "Password:"crt.Screen.Send params(3) & vbcrcrt.Screen.waitForString "#"'备份目前runing-config 配置str1 = "show run"crt.Screen.Send str1 & vbcrcrt.Screen.WaitForString " --More-- "crt.Screen.Send " & vbcr " '备份完成后退出crt.Screen.waitForString "!" & vbcrlf & "end"crt.Session.Disconnect loopcrt.Screen.Synchronous = False End Sub复制备份交换机配置批处理.vbs 到c:\ SW_bak\ 文件夹内;3、在c:\ SW_bak\ 文件夹中新建一个log 文件夹,用于保存配置文件。

利用secureCRT脚本对华为交换机进行批量备份

利用secureCRT脚本对华为交换机进行批量备份

利用secureCRT脚本对华为交换机进行批量备份软件:secureCRT 7.0 作者:鲍继川邮箱:bc5367@原理价绍:利用SecrureCRT的脚本对交换机进行批量登录后记录回话即可完成备份。

首先有个交换机所有的ip,用户名,密码。

Su密码文件,用来读取。

比如e:\\easy\\allswip.txt 里面格式如下:192.168.1.10 username1 password1 supassword1192.168.1.11 username2 password2 supassword2中间是空格,以方便读取。

先telent交换机ip登录,依次自动输入username password等等。

然后dis cu 即可完成备份了。

运行效果图如下:选择脚本后执行以下代码:脚本代码如下:# $language = "JScript"# $interface = "1.0"var ForReading = 1, ForWriting = 2;var objTab= crt.GetScriptTab();crt.Screen.Synchronous = true;function main(){var fso, f,f2,tex;fso = new ActiveXObject("Scripting.FileSystemObject");f = fso.OpenTextFile("e:\\easy\\allswip.txt", 1);//读取交换机ip文件e:\\easy\\allswip.txt//var tex=f2.ReadALL();while ( f.AtEndOfStream != true ){ var str,t;str=f.Readline();params=str.split(" ");//依次登录后dis duobjTab.Session.Connect("/telnet " + params[0]);objTab.Screen.WaitForString("Username:");objTab.Screen.Send(params[1]+"\r");objTab.Screen.WaitForString( "Password:");objTab.Screen.Send(params[2] + "\r");objTab.Screen.WaitForString( ">");objTab.Screen.Send ("super 3" + "\r");objTab.Screen.WaitForString( " Password:");objTab.Screen.Send (params[3] + "\r");objTab.Screen.WaitForString( ">");objTab.Screen.Send ("sys" + "\r");objTab.Screen.WaitForString("]");//记录日志,即备份objTab.Session.LogFileName = "E:\\easy\\备份\\"+params[0]+" "+params[1]+".log"; objTab.Session.Log(true);objTab.Screen.Send("dis cu\r");//这里是发送空格哦就是那个什么more 需要的objTab.Screen.Send(" ");objTab.Screen.Send(" ");//objTab.Screen.WaitForString("@",15)objTab.Screen.WaitForString("]");//objTab.Session.Log(false);objTab.Screen.Send("quit\r");//objTab.Screen.WaitForString("]");objTab.Session.Log(false);//objTab.Screen.Send("quit\r");//objTab.Screen.WaitForString(">");//objTab.Screen.Send("save\r");//objTab.Screen.Send("y\r");objTab.Screen.WaitForString("@",2)objTab.Session.Disconnect();}}完成后发现e盘下面有E:\easy\备份这个文件夹里面都是备份的内容了。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

使用SecureCRT批处理备份所有交换机路由器配置脚本
测试了SecureCRT脚本批量执行备份cisco交换机或者路由器配置文件的功能。

测试通过(成功批量备份28台交换机,时间小于1分钟)。

此脚本可以根据你的需要修改,改成其他功能,希望有需要的同学扩展思路。

使用SecureCRT对所有交换机路由器批处理执行WR命令的脚本
使用方法:
1、在D盘新建一个文件夹,命名为SWbackup,打开文件夹,新建list.txt,编辑这个文本文件,每行输入3列分别是:交换机ip 密码 enable密码;
例如:192.168.1.1 cisco cisco(有多少交换机就写多少行)
2、将下载回来解压后的 SecureCRT对所有交换机路由器批处理执行WR命令的脚本.vbs复制到D盘SWbackup文件夹内;
3、在D盘SWbackup文件夹中新建一个log文件夹,用于保存配置文件。

然后再新建一个以日期为名字的文件夹用于区别多个备份。

目录结构例如:d:\SWbackup\log\20110810\
4、打开SecureCRT,点击菜单栏的脚本-执行,选择下载回来解压后的备份所有交换机配置批处理脚本.vbs,点执行。

脚本中的目录、文件名、命令,大家可以自己改啊,想偷懒就自己研究一下。

很简单的。

更改方法:右键点击备份所有交换机配置批处理脚本.vbs,点编辑。

======================================================================= ======================
# $language = "VBScript"
# $interface = "1.0"
'本脚本示范:从一个文件里面自动读取设备IP地址,密码等,自动将设备配置备份
Sub Main
'打开保存设备管理地址以及密码的文件
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim fso,file1,line,str1,params
Set fso = CreateObject("Scripting.FileSystemObject")
Set file1 = fso.OpenTextFile("d:\SWbackup\list.txt",Forreading, False)
crt.Screen.Synchronous = True
DO While file1.AtEndOfStream <> True
'读出每行
line = file1.ReadLine
'分离每行的参数 IP地址密码 En密码
params = Split (line)
crt.session.LogFileName = "d:\SWbackup\log\20120331\" & params(0) & ".txt"
crt.session.Log(true)
'Telnet到这个设备上
crt.Session.Connect "/TELNET " & params(0)
'输入telnet密码
crt.Screen.WaitForString "Password:"
crt.Screen.Send params(1) & vbcr
'进特权模式
crt.Screen.Send "enable" & vbcr
crt.Screen.WaitForString "Password:"
crt.Screen.Send params(2) & vbcr
crt.Screen.waitForString "#"
'备份目前runing-config配置
str1 = "show run"
crt.Screen.Send str1 & vbcr
crt.Screen.WaitForString " --More-- "
crt.Screen.Send " " & vbcr
'备份完成后退出
crt.Screen.waitForString "!" & vbcrlf & "end"
crt.Session.Disconnect
loop
crt.Screen.Synchronous = False
End Sub
'list.txt需要先做好。

每行3列分别是:交换机ip 密码 enable密码。

例如:192.168.1.1 cisco
cisco,有多少交换机就写多少行
=======================================================================
=======================
有cisco交换机配置中末尾部分不是:! end 。

这样的话脚本执行会出现报错。

只要把
'备份完成后退出
crt.Screen.waitForString "!" & vbcrlf & "end"
改为crt.Screen.waitForString "end" ,就可以顺利执行了。

相关文档
最新文档