当前位置: 首页 > news >正文

宣武青岛网站建设中国建设银行积分查询网站

宣武青岛网站建设,中国建设银行积分查询网站,一个logo设计要多少钱,聊城集团网站建设多少钱xshell具有脚本功能,可以实现很多自动化的操作。 从xshell的官方手册,可以知道xshell的脚本分为3类: xsh.Session 下面的函数或变量在xshell会话中使用,使用的时候要指定会话一起使用,比如使用Sleep()函数&#x…

xshell具有脚本功能,可以实现很多自动化的操作。
在这里插入图片描述

从xshell的官方手册,可以知道xshell的脚本分为3类:
在这里插入图片描述

xsh.Session

下面的函数或变量在xshell会话中使用,使用的时候要指定会话一起使用,比如使用Sleep()函数,要这样使用:xsh.Session.Sleep(1000)

函数

返回值函数参数说明
VoidOpen(LPCTSTR lpszSession)lpszSession:字符串,指Xshell会话路径或Xshell使用的URL类型。打开新会话或URL。需要把 /s选项置于字符串的前端。
例如要打开A.xsh会话使用‘/s $PATH/A.xsh’
VoidClose()关闭当前连接的会话。
VoidSleep(long timeout)Timeout:毫秒单位的时间值Xshell按照指定时间进行待机。
VoidLogFilePath(LPCTSTR lpszNewFilePath)lpszNewFilePath:包括路径在内的文件名指定日志文件。
voidStartLog()开始会话的日志记录。日志将被保存到LogFilePath()指定的路径。如果没有指定日志文件路径则使用默认路径。
voidStopLog()停止日志记录。

变量

名称类型说明
ConnectedBOOL检查当前会话是否连接。
LocalAddressBSTR导入本地地址。
PathBSTR导入当前会话文件的路径。
RemoteAddressBSTR导入远程地址。
RemotePortlong导入远程端口号。
LoggingBOOL检查当前会话是否记录日志。
LogFilePathBSTR​​保存为日志文件。

xsh.Screen

下面的函数和变量在处理xshell终端屏幕的时候使用,使用的时候要配合xsh.Screen一起使用,比如要使用Clear()函数,要这样使用:xsh.Screen.Clear

函数

返回值函数参数说明
voidClear()清除终端屏幕。
voidSend(LPCTSTR lpszStrToSend)lpszStrToSend:用户拟要发送的字符串向终端发送消息。
BSTRGet(long nBegRow, long nBegCol, long nEndRow, long nEndCol)nBegRow:终端的行起始位置
nBegCol:终端的列起始位置
nEndRow:终端的行末端位置
nEndCol:终端的列末端位置
读入终端规定区域的字符串并返回读取值。
voidWaitForString(LPCTSTR lpszString)lpszString:终端中打印的字符串等待终端打印lpszString字符串。
LongWaitForStrings(VARIANT FAR* strArray, long nTimeout)strArray:终端中打印的字符串
nTimeout:等候时间
返回值:发现的字符数
等待某消息直到超时。

变量

名称类型说明
CurrentColumnlong返回当前列数。
CurrentRowlong返回当前行数。
Columnslong返回与终端的列宽相同的列数。
Rowslong返回与终端的行高相同的行数。
SynchronousBOOL设置屏幕同步 (True:屏幕同步,false:屏幕不同步)​

xsh.Dialog

使用的时候要配合xsh.Dialog一起使用,比如要使用MsgBox()函数,要这样使用:xsh.Dialog.MsgBox()

函数

返回值函数参数说明
LongMsgBox(LPCTSTR lpszMsg)LpszMsg:想要发送的字符串打开一个消息框
stringPrompt(LPCTSTR lpszMessage, LPCTSTR lpszTitle, LPCTSTR lpszDefault, BOOL bHidden)lpszMessage:在对话框上显示的字符串。
lpszTitle:在对话框标题栏显示的字符串。
lpszDefault:在对话框输入框中初始显示的字符串。
bHidden:如果设置为True,输入会被隐藏 (e.g. *****)
作用:返回用户在对话框中的输入。
返回值:用户在对话框中的输入。
intMessageBox(LPCTSTR lpszMessage, LPCTSTR lpszTitle, int nType)lpszMessage:在消息框中显示的字符串。
lpszTitle:在消息框标题栏显示的字符串。
nType:按钮类型,参考下面的表。
作用:按照用户选择的按钮类型显示消息框并返回相应的值。
返回值:参考下面的表。

按钮类型:

类型Button返回值
0OK1
1OK / Cancel1 / 2
2Abort / Retry / Ignore3 / 4 / 5
3Yes / No / Cancel6 / 7 / 2
4Yes / No6 / 7
5Retry / Cancel4 / 2
6Cancel / TryAgain / Continue2 / 10 / 11

实例

Sub MainDim hostname, username, passwordhostname = xsh.Dialog.Prompt ("Insert Hostname", "Prompt Dialog", "hostname", 0)username = xsh.Dialog.Prompt ("Username", "Prompt Dialog", "", 0)password = xsh.Dialog.Prompt ("Password", "Prompt Dialog", "", 1)if xsh.Dialog.MessageBox("Connect to " & hostname & " server", "MessageBox",1) = 1 thenxsh.Session.Open("ssh://" & username & ":" & password & "@" & hostname)End If
End Sub

注:以下实例来自网上,仅供自己编程参考,不保证直接能用。

实例1

Sub main  xsh.Screen.Synchronous = True    ' 使窗口显示与当前输出同步  xsh.Screen.WaitForString "Reboot now? (y/n)"    ' 等待目标设备发回 "Reboot now? (y/n)" 字符串  xsh.Screen.Send "y" & VbCr    ' 输入字符 y 并回车  
End Sub  

实例2

Sub Main' *** Connect the session ***
xsh.Session.Open "ssh://192.168.1.17"
' "/s C:\Users\Administor\AppData\Roaming\NetSarang\Xshell\Sessions\example.xsh"xsh.Screen.Synchronous = truexsh.Screen.WaitForString "login: "
xsh.Screen.Send "username"
xsh.Screen.Send VbCr
xsh.Session.Sleep 100xsh.Screen.WaitForString "Password: "
xsh.Screen.Send "password"
xsh.Screen.Send VbCr
xsh.Session.Sleep 100' *** Wait for Prompt Message ***
xsh.Screen.WaitForString "username@password"' *** Set File Format ***
Dim app, wb, ws
Set app= CreateObject("Excel.Application")
Set wb = app.Workbooks.Add
set ws = wb.Worksheets(1)xsh.Session.LogFilePath = "c:\example.log"
xsh.Session.StartLogDim waitStrs
waitStrs = Array(Chr(10), "username@password") ' make wait message as arrayDim row, screenrow, readline, itmes
row = 1' *** Send Command ***
xsh.Screen.Send "cat /etc/passwd"
xsh.Screen.Send VbCr
xsh.Session.Sleep 100Dim result' *** Read Data and Save it as an EXCEL File ***
Do
While true
result = xsh.Screen.WaitForStrings(waitStrs, 1000)If result = 2 Then
Exit Do
End Ifscreenrow = xsh.Screen.CurrentRow - 1
readline = xsh.Screen.Get(screenrow, 1, screenrow, 40)
items= Split(readline, ":", -1)ws.Cells(row,1).Value = items(0)
ws.Cells(row,2).Value = items(2)row = row + 1
Wend
Loopwb.SaveAs("C:\chart.xls") ' save file path
wb.Close
app.QuitSet ws = nothing
Set wb = nothing
Set app = nothingxsh.Screen.Synchronous = falsexsh.Session.StopLogEnd Sub

实例3

Xshell打开多个session(会话)

Sub MainDim username, password
username = "用户名"
password = "密码"
Dim Hosts(主机名的个数减去1)
hosts(0) = "主机名1"
hosts(1) = " 主机名2 "
hosts(n-1) = " 主机名n"
For Each HostStr In Hosts
xsh.Session.Open ("ssh://" & username & ":" & password & "@" & HostStr)
xsh.Session.Sleep(50)
Next
End Sub

实例4

# import xsh.Session
# import xsh.Screen
# import xsh.Dialogdef get_current_row_info(num: int):"""获取终端当前行num个字符"""screenRow = xsh.Screen.CurrentRowline = xsh.Screen.Get(screenRow, 1, screenRow, num)return linedef Main():# 打开一个已经存在的会话# xsh.Session.Open("ssh://user:pass_word@192.168.31.52:22")xsh.Session.Open("G:\\user\\Documents\\NetSarang Computer\\7\\Xshell\\Sessions\\192.168.31.52.xsh")xsh.Screen.Synchronous = Truexsh.Session.Sleep(1000)# 切换到root用户xsh.Screen.Send("su root\r")xsh.Session.Sleep(100)line = get_current_row_info(30)if "Password" in line:xsh.Screen.Send("paas_word\n")

实例5

# import xsh.Session
# import xsh.Screen
# import xsh.Dialog
import redef get_current_row_info(num: int):"""获取终端当前行num个字符"""screenRow = xsh.Screen.CurrentRowline = xsh.Screen.Get(screenRow, 1, screenRow, num)return linedef Main():# 在一个存在的会话中执行xsh.Screen.Synchronous = Truexsh.Session.Sleep(1000)xsh.Screen.Send("ssh zzb@192.168.31.52\r")xsh.Session.Sleep(100)# 当第一次登录时,会验证初始ssh连接line = get_current_row_info(100)if re.search("yes/no", line):xsh.Screen.Send("yes\r")xsh.Session.Sleep(100)# 终端出现提示输入密码时,输入密码line = get_current_row_info(100)if re.search("paasword", line, flags=re.I):xsh.Screen.Send("yes\r")if "password" in line:xsh.Screen.Send("paas_word\r")

实例6

/* 测试函数 */
function test()
{/* 发送echo 112233 > /tmp/testfile */xsh.Screen.Send("echo 112233 > /tmp/testfile");xsh.Screen.Send(String.fromCharCode(13));/* 发送cat /tmp/testfile */xsh.Screen.Send("cat /tmp/testfile");xsh.Screen.Send(String.fromCharCode(13));/* 字符串处理 */var ScreenRow, ReadLine, Items;/* 读取末行的40个字符 */ScreenRow = xsh.Screen.CurrentRow - 1;ReadLine = xsh.Screen.Get(ScreenRow, 1, ScreenRow, 40);/* 如果读取到的字符不是112233 */if(ReadLine != "112233"){/* 会话框打印实际的字符串 */xsh.Dialog.MsgBox(ReadLine);}
}/* 主函数 */
function Main()
{/* 打开会话,根据实际的会话路径修改 */xsh.Session.Open("C:\Users\Administrator\Documents\NetSarang Computer\6\Xshell\Sessions\ubuntu.xsh");xsh.Screen.Synchronous = true;/* 开始记录日志 */xsh.Session.LogFilePath = "C:\Users\Administrator\Documents\NetSarang Computer\6\Xshell\Logs\example.log";xsh.Session.StartLog();/* 等待输入start */
//	xsh.Screen.WaitForString("start");/* 发送rm -rf /tmp/testfile */xsh.Screen.Send("rm -rf /tmp/testfile");/* 发送回车 */xsh.Screen.Send(String.fromCharCode(13));/* 发送touch /tmp/testfile */xsh.Screen.Send("touch /tmp/testfile");xsh.Screen.Send(String.fromCharCode(13));/* 测试100*/for(var i = 1; i < 100; i++){test();xsh.Session.Sleep(500);}/* 清屏 */
//	xsh.Screen.Clear();
}
http://www.yayakq.cn/news/849046/

相关文章:

  • 长沙seo网站推广做中学学中做网站
  • 宁德城乡建设网站免费搭建个人网站
  • 网站兼容性做一个平台网站大概多少钱
  • 空间购买网站龙华网站网页设计
  • 免费网站自己做鄂州网站推广
  • 织梦茶叶网站模板免费下载网站建设行业的前景
  • 建设银行网站一直打不开购物网站页面设计步骤
  • 番禺建设网站公司哪家好熊猫关键词工具官网
  • wordpress最新免费主题下载地址seo的优化原理
  • 凡科建站登录入口官方正版我要自学网首页网站建设
  • 知名网站建设公司电话游戏推广方案
  • 岗顶网站设计邯郸做网站询安联网络
  • 百度地图放到网站上北辰做网站
  • 网站制作视频教程南阳市城乡和住房建设局网站
  • 化工企业常用推广网站那些网站用不着做优化
  • 网站备案需要的资料洛阳网电脑版
  • 私人做的不错的网站颍上建设局网站
  • 网站的类型和特色wordpress 模板 旅游
  • 网站的开发环境平台类网站制作公司
  • 网站空间购买800太原网站建设哪家最好
  • 整合营销网站网商之家
  • seo网站建设优化什么意思网站建设呼和浩特
  • 通辽做家教的网站杭州文化传媒类高端网站建设公司
  • 选择常州网站建设公司服务企业是什么
  • 网站移动排名天津做国外网站
  • 建设电子商务网站背景本地搭建php网站
  • 做网站百度一下seo关键词搜索和优化
  • 做o2o平台网站需要多少钱秦淮区建设局网站
  • 临沂网站建设有哪些pptai一键生成免费
  • 建设网站开发公司住建局官网平台