Python怎么封装远程连接的组件
发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,本篇内容介绍了"Python怎么封装远程连接的组件"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!#!
千家信息网最后更新 2024年11月26日Python怎么封装远程连接的组件
本篇内容介绍了"Python怎么封装远程连接的组件"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
#!/usr/bin/env python# coding:utf-8'''@author: Ryan Bai(白瑞钧)@license:@contact: brj880719@hotmail.com@file: SSHClient.py@create time: 2017/11/8 18:11@attention: ssh客户端使用@desc:'''import paramikofrom paramiko.py3compat import uimport timeclass SSHClient(object): ''' @attention: 关闭 ssh 链接 @author: 白瑞钧 @param ssh: ssh链接 ''' def close(self, ssh): ssh.close() ''' @attention: 创建 ssh 链接 @author: 白瑞钧 @param v_username: 用户名 @param v_password: 密码 @param v_ip: IP @param v_port: 端口号 ''' def sshConnection(self, v_username, v_password, v_ip, v_port=22): # 创建SSH对象 ssh = paramiko.SSHClient() # 把要连接的机器添加到known_hosts文件中 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 连接服务器 ssh.connect(hostname=v_ip, port=v_port, username=v_username, password=v_password) return ssh # endregion ''' @attention: 执行单条命令 @author: 白瑞钧 @param ssh: ssh链接 @param v_cmd: 需要执行的命令 ''' def sshExecByOne(self, ssh, v_cmd): # 执行 stdin, stdout, stderr = ssh.exec_command(v_cmd) result = stdout.read() if not result: result = stderr.read() return result.decode() ''' @attention: 执行命令集 @author: 白瑞钧 @param s: ssh链接 @param l_cmd: 需要执行的命令集 @param exec_wait: 执行命令间隔时间 @param exit_wait: 退出等待时间 ''' def sshExecByMany(self, s, l_cmd, exec_wait, exit_wait): ssh = s.invoke_shell() # 执行 for v_cmd in l_cmd: ssh.send(v_cmd) ssh.send('\n') time.sleep(exec_wait) if v_cmd=='exit': time.sleep(exit_wait) result = u(ssh.recv(9999)) return resultif __name__ == '__main__': getClient = SSHClient() ssh = getClient.sshConnection('sys_admin', 'XSW@1qaz', '10.82.28.219') l_cmd = ['sudo su - ', 'su - oracle', 'sqlplus / as sysdba', u'select * from dual;', 'exit', 'df -h', 'exit'] result = getClient.sshExecByMany(ssh, l_cmd, 1, 1) print(result) getClient.close(ssh) # getClient = SSHClient() # ssh = getClient.sshConnection('sys_admin', 'XSW@1qaz', '10.82.28.219') # result = getClient.sshExecByOne(ssh,'pwd') # print(result) # getClient.close(ssh)
"Python怎么封装远程连接的组件"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
命令
链接
组件
封装
内容
时间
更多
知识
命令集
实用
学有所成
接下来
口号
困境
实际
客户
客户端
密码
对象
情况
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全防线进一步增
恐龙有钱app系统软件开发
托卡世界服务器下载
甘肃省网络安全视频
南京app软件开发工程师
北京凯普瑞软件开发有限公司
网络技术名词 was
网络技术公司的企业想法描述
网络安全设计性问题
网页存取数据库数据
个人实践签定网络安全宣传
找到网络安全手抄报的图片
吉林新一代软件开发应用
畅游互联网络科技公司
广州巨杉软件开发有限公司简介
腾讯云服务器可以玩游戏么
机房服务器更新计划
数据库排序内存
网络技术服务协议模板
网络安全卫生小标语
数据库查找表中的数据库
软件开发失业吗
阿里云服务器卡顿黑屏
ipad 作为服务器
第四届互联网大会的科技
鸿蒙开发系统数据库
手机资源服务器异常怎么回事
网络技术论坛作用
怀旧服服务器盗贼毕业装备
2017年网络安全周海报