SecureCRT自动登陆到服务器的脚本以及脚本编写简单说明
http://blog.csdn.net/marising/article/details/6409196
Secure用SSH登陆服务器时,如果服务器较多,登陆一次很麻烦,所以,可以自己编写VBScript来搞定。
一、Secure脚本介绍
Secure是VBScript脚本,VB脚本的教程,请参考有关文档。
Secure自带的对象如下:
Application对象,就是crt,是个顶层的对象,所有其他内容都从这个对象中获得
Session,会话对象,负责连接相关
Tab对象,就是标签页
Scree对象,负责交互相关的,比如发送命令、接收命令返回等
主要是上面这几个,其他的看帮助文档。
二、自动登陆的说明
1、创建Session,并连接到服务器
这里有两种方式,一种是自己设置参数连接,一种是利用现有的Session设置来连接
方式1:
crt.session.Connect("protocol user@host")
protocol:协议,支持ssh,ssh2,telnet
user:用户名
host:机器名
方式2:
Set conf = crt.OpenSessionConfiguration("session_name")
Set tab = conf.ConnectInTab()
session_name:是你自己设置的Session的名字,这样做的好处是可以利用已设置好的Session来连接,简单。
2、克隆(Clone)标签页,并登陆到服务器
Set newtab = tab.Clone()
克隆的好处是不用再登陆,直接Clone已有的即可。
3、设置标签页的名称等
tab.Caption = xxx
标签多了,需要每个设置一个别名
4、连接到服务器
连接功能主要是Screen对象中的各种方法。
Set scr = tab.Screen '首先获取tab的Screen
scr.Send("ssh " & host & VbCr) '发送ssh 登陆命令
scr.WaitForString(host & "'s password: ") '等待输入密码的提示
scr.Send(pwd & VbCr) '输入密码
三、完整例子
- #$language = "VBScript"
- #$interface = "1.0"
- crt.Screen.Synchronous = True
- Function Login(ptab,name,host,pwd,cmd)
- Dim tab,scr
- Set tab = ptab.Clone()
- tab.Caption = name
- Set scr = tab.Screen
- scr.Send("ssh " & host & VbCr)
- scr.WaitForString(host & "'s password: ")
- scr.Send(pwd & VbCr)
- scr.Send(cmd & VbCr)
- Set Login = tab
- End Function
- Sub Main
- Dim conf,tab
- Set conf = crt.OpenSessionConfiguration("session_name")
- Set tab = conf.ConnectInTab()
- Set tab = Login(tab,"name1","user1@host1","xxx","cd /home/")
- Set tab = Login(tab,"name2","user2@host2","xxx","shell cmd")
- End Sub
更详细的介绍,请参考SecureCRT的帮助文件。
SecureCRT自动登陆到服务器的脚本以及脚本编写简单说明的更多相关文章
- 使用ssh公钥密钥自动登陆linux服务器
转自:http://7056824.blog.51cto.com/69854/403669 作为一名 linux 管理员,在多台 Linux 服务器上登陆进行远程操作是每天工作的一部分.但随着服务器的 ...
- [zz] 使用ssh公钥密钥自动登陆linux服务器
目录 .生成密匙对 .拷贝公匙到远程机 .启动登陆代理 这种方法处理后每次需要运行命令:ssh-add ~/.ssh/id_dsa 作为一名 linux 管理员,在多台 Linux 服务器上登陆进行远 ...
- 在PHP中调用php_ssh实现远程登陆linux服务器并执行shell脚本。
这个功能主要用于在web端利用程序对远程服务器进行操作,通过PHP_ssh执行shell脚本来实现. 首先要安装php_ssh2组件,linux中centos7下有ssh2源,直接安装.window下 ...
- linux expect自动登陆远程服务器 批量管理服务器
#!/usr/bin/expect set ipaddress [lindex $argv 0] set passwd [lindex $argv 1] set timeout 3 spawn ssh ...
- 修改注册表实现Windows自动登陆
昨天再修一条case时无意间发现这个case竟然要重启机器,并且要用指定的账户自动登陆Windows.然后就发现了,简单的修改下注册表就可以完成自动登陆了. 首先,在“run”里输入“regedit” ...
- 在有跳板机的情况下,SecureCRT自动连接到目标服务器
为了服务器的安全,运维人员经常会要求我们先登录到跳板机,然后再SSH连接到目标服务器.但是这样是很繁琐的,每次在SecureCRT创建一个连接,都需要输入SSH命令,然后输入密码. 下面的方法可以实现 ...
- SecureCRT上使用公钥登陆Linux服务器
SecureCRT部分配置 1.首先生成公钥. 打开SecureCRT(我的版本为7.0,估计其他版本基本相同)程序,点击菜单栏的“工具”->“创建公钥”.按照步骤执行.其中一步比较重要就是选择 ...
- centos shell编程4【分发系统】 服务器标准化 mkpasswd 生成密码的工具 expect讲解 expect传递参数 expect自动同步文件 expect指定host和要同步的文件 expect文件分发系统 expect自动发送密钥脚本 Linux脚本执行方式 第三十八节课
centos shell编程4[分发系统] 服务器标准化 mkpasswd 生成密码的工具 expect讲解 expect传递参数 expect自动同步文件 expect指定host和要 ...
- 配置putty自动登陆服务器
putty是一款知名的SSH工具,可以用来登陆linux服务器,提供了终端.SSH是secure Shell的缩写.我之前也有一篇文章介绍这个话题:http://www.cnblogs.com/che ...
随机推荐
- [转载]删除所有的.svn文件夹
Windows 下,在DOS窗口中运行如下命令 dos 代码 for /r <你项目的路径> %i in (.svn) do rd /s /q %i Linux 下,可以先运行 显示出当前 ...
- MVC 表单提交提示:已添加了具有相同键的项。
MVC:页面提交的时候报如下错误: 解决方案: 这个Model 里面定义了重复的字段so~~~
- SQLServer数据操作(建库、建表以及数据的增删查改)
SQLSever数据操作 一.建立数据库: create database DB ---数据库名称 ( name=data1 --文件名, ...
- pdf压缩之GSview
今天实验室一个同学在网上投简历,网站要求投稿的简历pdf文件必须在100K以内.简历用的是ModernCV的模板,无论如何设置都在160k左右. 尝试用acrobat的压缩功能,也不能保证在100K以 ...
- 查看帮助文档的一些方法:help,dir,type,func_global等
help与dir与type:在使用python来编写代码时,会经常使用python自带函数或模块,一些不常用的函数或是模块的用途不是很清楚,这时候就需要用到help函数来查看帮助.这里要注意下,hel ...
- ###C中的extern-static-const关键词
#@date: 2014-06-14 #@author: gerui #@email: forgerui@gmail.com Contents extern的作用一般是用来声音一个外部变量和函数.一般 ...
- ios - 再细读KVO
[罗国强原创] KVO - Key-Value Observing. 它提供了一种机制,允许对象被通知到其他对象的具体特性的变化.它特别适用于一个应用的模型层与控制层的交互. 一种典型的应用场景是在一 ...
- JavaScript基础-面向对象编程<2>
2.动态添加,修改和删除对象属性和方法 例如:用类Object()创建一个空对象user,然后修改其行为. (1) 添加属性 var user=new Object(); //创建一个没有属性和方法的 ...
- CSU-ACM2016暑期集训训练4-BFS(F - Oil Deposits)
F - Oil Deposits Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u De ...
- RX编程笔记——JavaScript 获取地理位置
RX编程笔记——JavaScript 获取地理位置 2016-07-05