SecureCRT工具的使用技巧和腳本的定時執行

   SecureCRT是一個很方便的遠程控制linux系統的命令行工具。在SecureCRT的使用技巧中,常用的就按鈕欄和錄製腳本。

   在SecureCRT中您可以配置自己的按鈕欄,在按鈕欄上定製添加一些常用操作的按鈕。這樣通過一鍵鼠標點擊就可以搞定常用輸入或常用操作,例如tail查看某個文件或cd到某個目錄,非常地便捷。

   SecureCRT另外一個常用的功能就是錄製腳本,可以將一些更長的命令行輸入,錄製成爲一個可以回放的VBScript小程序。例如,固定從某個ftp的目錄下獲取版本,然後進行無界面的升級安裝。通過錄制腳本的回放,也是一鍵就可以搞定一些複雜但是固定的常用操作,非常的便捷!

  SecureCRT錄製的小程序,可以進一步經過適當的改造,就可以達到在不同機器上進行“回放”。主要就是參數化crt.Screen.WaitForString 語句、某些可以不使用waitForString的場景,使用更普適的crt.Screen.WaitForCursor、以及一些必須的延時等待,可以使用特殊形制和更表義的crt.Screen.WaitForString腳本語句。這些特殊形制的crt.Screen.WaitForString,其等待的字符串爲永遠不可能出現,但更表義的字符串,直至等到超時。例如:

    If crt.screen.WaitForString("waitForUpdateFinish:", 90) <> False Then

    End If

   在個人的實踐中,通過對某些執行語句,輔助以>>/dev/null,避免光標頻繁移動,避免使得crt.Screen.WaitForCursor的滿足條件生效,大部分的crt.Screen.WaitForString都可以替換爲crt.Screen.WaitForCursor,。

   那麼這些常用操作,如何能夠定時執行呢?不巧的是,secureCRT不提供這種功能,需要藉助windows系統的任務計劃程序。利用bat批處理程序,將執行語句%SecureCRT_HOME%\SecureCRT.exe /POS 0 0 /S "yourRmoteHostConfigConnectName" /SCRIPT yourRecord.vbs加入定時任務,則可以實現定時執行。

  如果僅靠錄製的腳本定時執行的話,定時執行完畢後,會存在一個殘留的SecureCRT程序,也很是不爽!在對於錄製腳本的研究中,SecureCRT的幫助文檔起到很大的作用,發現SecureCRT支持的腳本中,還可以關閉連接、進而關閉程序:

        crt.Session.Disconnect
crt.Quit 

      這兩個操作比較暴力,最好是在正確的crt.Screen.WaitForString或適當地能夠保證成功完成的超時時間之後才執行。

      保證錄製腳本執行後關閉臨時SecureCRT的實踐,結合持續集成Jenkins環境,就無縫地在某些特定用途的場景下,實現版本的自動部署了。

      PS:某些同學認爲利用SecureCRT命令按鈕和回放腳本,可能會使得忘記一些linux shell命令。我想是這種後果有可能的,所以,建議這些操作,是在您浸淫很多次後,爲了一些偷懶的目的玩玩吧:)



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章