您的位置:首页 > 其它

SecureCRT工具的使用技巧和脚本的定时执行

2017-04-08 11:51 1426 查看
   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命令。我想是这种后果有可能的,所以,建议这些操作,是在您浸淫很多次后,为了一些偷懒的目的玩玩吧:)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息