东半球最好的SecureCRT高级教程

来源:互联网 发布:ubuntu 17.04 输入法 编辑:程序博客网 时间:2024/05/11 09:06

东半球最好的SecureCRT的高级教程


搞Linux的用过SCRT的人有很多,但是我发现很少有人能把这个软件用到极致。^_^
我们每天都会在SCRT上敲各种命令,有些命令很长、繁琐、重复,其实好好利用SCRT的一些功能就可以大大的提高效率。

正所谓工欲善其事必先利其器,磨刀不误砍柴工,下面我将给大家说下SCRT的高级教程。

**

1.SecureCRT的常用设置

**
1)快速链接:这个地方可以对常用的会话增加一个桌面快捷方式
快速链接 创建快捷方式

2)链接后设置会话选项,也就是说下面做的这些设置只针对这个会话有效
这里写图片描述
这里写图片描述
这里写图片描述

这里写图片描述
这里写图片描述
这里写图片描述

这里写图片描述
这里写图片描述

3)最后这个是全局的设置:
这里写图片描述

**

2.其他技巧

**
1)交互窗口:这个功能是打开多个窗口,并且可以对这些窗口同时发送同样的命令。
调出方式是“查看”—“交互窗口”,调出后右键—”发送交互到所有窗口”
这里写图片描述

2)其他快捷键
1. Ctrl+L 或者输入reset可以刷新整个屏幕
2. Ctrl+S 是锁定当前会话窗口的,不小心按到的话,可以按Ctrl+Q解锁
3. Alt+1、Alt+2可以切换窗口

3)按钮栏
调出方法是:“查看”—-“按钮栏”,自己可以右键在上面新建按钮。
这个“Button Bar”可是大杀器啊,你可以把自己常用的命令做成按钮,下次直接点击就可以了,看图
这里写图片描述

比如在登录mysql的时候就可以用到这样的功能。

就这样你可以用一大堆常用的命令把自己的SecureCRT武装起来。
还可以把常用的脚本放上去,至于怎么写脚本,看下节。

**

3.SecureCRT的脚本

**
最早我开始接触SCRT脚本是因为闲着无聊了,发现有个录制脚本的功能,于是就开始录制脚本,保存并开始研究,接着发现这个脚本大有可为,于是开始看用户手册,翻墙去官方论坛看别人写的脚本。

其实在安装目录下面的App\VanDyke Clients\Scripts 这个目录下面也有不少自带的脚本,可以研究下。

下面我就分享下几个我写的常用的脚本,因为脚本都比较简单,一看便会,稍微改改就能满足大家自己的要求了,我就不多说了,直接上码。

1.自动登录并输入密码的脚本

#$language = "VBScript"#$interface = "1.0"crt.Screen.Synchronous = True' This automatically generated script may need to be' edited in order to work correctly.' Time Convert by http://blog.csdn.net/laoshufeifeiSub Main    crt.Screen.Send "ssh xx@xxxxcom" & chr(13)    crt.Screen.WaitForString "xx@xxxx.com's password: "    crt.Screen.Send "123" & chr(13)End Sub

或者也可以这样

#$language = "VBScript"#$interface = "1.0"crt.Screen.Synchronous = True' Auto Input Password By http://blog.csdn.net/laoshufeifeiSub Main    'do while 1        nResult = crt.Screen.WaitForStrings (_                                            "xx@xxxx.com's password:",_                                            "xx@xxxxx.com's password:",_                                            "xx@xxxx.com's password:",_                                            10)        If nResult=1 Then            crt.Screen.Send "mima1" & chr(13)        ElseIf nResult=2 Then            crt.Screen.Send "mima2" & chr(13)        ElseIf nResult=3 Or nResult=4 Or nResult=5  Then            crt.Screen.Send "1234" & chr(13)        ElseIf nResult>5 Then            crt.Screen.Send "123" & chr(13)        End If    'loopEnd Sub

对于后面这个脚本可以通过快捷键或者按钮栏启动后,然后正常执行跳转、远程拷贝等操作,等屏幕上出现对应的关键字时,就可以发送相应的密码了。

2. 时间戳转换
大家在linux上经常会用到时间戳,但是要想转成直观的时间就比较麻烦了,可以用脚本来解决,选择一个时间戳后,启动该脚本,脚本可以自动获取剪贴板中的数字,自动转成真实时间并显示出来,非常方便。

Python版(推荐):

#$language = "Python"#$interface = "1.0"import stringimport time# Time Convert by http://blog.csdn.net/laoshufeifeidef main():    #crt.Dialog.MessageBox("SecureCRT version is: " + crt.Version)    #获取当前时间戳    #Stamp="%d" % time.time()    #直接运行下面这个命令有错 必须考虑时区的差异    #Timc="%s" % time.gmtime(Stamp)    #crt.Dialog.MessageBox(Timc)    #Clip = crt.Clipboard.Text    #InTim = crt.Dialog.Prompt("Please Input UnixStamp\n(The Default Text Is From Your Clipboard):", "Time Convert", Clip, False)    InTim = crt.Clipboard.Text    if InTim == "":        return    InTim = InTim.strip()    if not InTim.isdigit():        crt.Dialog.MessageBox("Please Input Digit!")        return    Tmp = time.localtime(int(InTim))    Result = time.strftime('%Y-%m-%d %H:%M:%S %A',Tmp)    Result = "Unix Stamp:{0}\nTime:{1}".format(InTim, Result)    crt.Dialog.MessageBox(Result)main()

或者VBS版:

#$language = "VBScript"#$interface = "1.0"crt.Screen.Synchronous = True' Time Convert by http://blog.csdn.net/laoshufeifeiSub Main    dim InTime,Output    InTime=inputbox("请输入要转换的时间戳","时间戳转普通时间")    InTime=Trim(InTime)    If IsNumeric(InTime)<>true then            msgbox("您输入有误!")            Exit Sub    end If    'crt.Screen.Send "echo " & InTime & " | awk '{print strftime (""%F %T"",$0)}'" & chr(13)    Output=DateAdd("s", InTime, "01/01/1970 08:00:00")    msgbox(Output)End Sub

3.大家在遇到乱码的情况的时候需要手动去会话选项中切换“字符编码”,我查了好久的资料终于写了一个脚本,可以在“UTF-8” 、“GB2312”、“GB18030”这几种常用的编码格式中切换。

#$language = "VBScript"#$interface = "1.0"crt.Screen.Synchronous = True' Auto Change Screen Transformer By http://blog.csdn.net/laoshufeifeiSub Main        Set curConf = crt.Session.Config        curForm = curConf.GetOption("Output Transformer Name")        If curForm = "GB2312" Then            curConf.SetOption "Output Transformer Name", "UTF-8"        ElseIf curForm = "UTF-8" Then            curConf.SetOption "Output Transformer Name", "Default"        ElseIf curForm = "Default" Then            curConf.SetOption "Output Transformer Name", "GB2312"        End If        'CRT.dialog.messagebox(curConf.GetOption("Output Transformer Name"))        curConf.Save        crt.Session.Config.Save        'Set objDefaultConfig = crt.OpenSessionConfiguration("xxxxx")        'objDefaultConfig.SetOption "Output Transformer Name", "UTF-8"        'objDefaultConfig.Save        'objDefaultConfig.ConnectInTab        'crt.Session.Connect "xxxxx"End Sub

我常用的脚本就这些了,欢迎交流,这篇文章就这样了,下篇会分享一些比较实用的Linux命令和脚本。

0 0
原创粉丝点击