SecureCRT自動登錄到服務器的腳本以及腳本編寫簡單說明

http://blog.csdn.net/marising/article/details/6409196shell

Secure用SSH登錄服務器時,若是服務器較多,登錄一次很麻煩,因此,能夠本身編寫VBScript來搞定。服務器

1、Secure腳本介紹session

Secure是VBScript腳本,VB腳本的教程,請參考有關文檔。ssh

Secure自帶的對象以下:spa

Application對象,就是crt,是個頂層的對象,全部其餘內容都從這個對象中得到.net

Session,會話對象,負責鏈接相關對象

Tab對象,就是標籤頁blog

Scree對象,負責交互相關的,好比發送命令、接收命令返回等教程

主要是上面這幾個,其餘的看幫助文檔。ip

 

2、自動登錄的說明

一、建立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來鏈接,簡單。

 

二、克隆(Clone)標籤頁,並登錄到服務器

    Set newtab = tab.Clone()

    克隆的好處是不用再登錄,直接Clone已有的便可。

 

三、設置標籤頁的名稱等

    tab.Caption = xxx

    標籤多了,須要每一個設置一個別名

 

四、鏈接到服務器

    鏈接功能主要是Screen對象中的各類方法。

     Set scr = tab.Screen '首先獲取tab的Screen

     scr.Send("ssh " & host & VbCr) '發送ssh 登錄命令

scr.WaitForString(host & "'s password: ") '等待輸入密碼的提示

scr.Send(pwd & VbCr) '輸入密碼

 

3、完整例子

 

[vb]  view plain copy
 
  1. #$language = "VBScript"  
  2. #$interface = "1.0"  
  3. crt.Screen.Synchronous = True  
  4. Function Login(ptab,name,host,pwd,cmd)  
  5.    Dim tab,scr  
  6.    Set tab = ptab.Clone()  
  7.    tab.Caption = name  
  8.    Set scr = tab.Screen  
  9.    scr.Send("ssh " & host & VbCr)  
  10.    scr.WaitForString(host & "'s password: ")  
  11.    scr.Send(pwd & VbCr)  
  12.    scr.Send(cmd & VbCr)  
  13.    Set Login = tab  
  14. End Function  
  15. Sub Main  
  16.    Dim conf,tab  
  17.    Set conf = crt.OpenSessionConfiguration("session_name")  
  18.    Set tab = conf.ConnectInTab()  
  19.    Set tab = Login(tab,"name1","user1@host1","xxx","cd /home/")  
  20.    Set tab = Login(tab,"name2","user2@host2","xxx","shell cmd")  
  21. End Sub   

 

 

 

更詳細的介紹,請參考SecureCRT的幫助文件。

相關文章
相關標籤/搜索