Python怎么封装远程连接的组件
发表于:2024-09-28 作者:千家信息网编辑
千家信息网最后更新 2024年09月28日,本篇内容介绍了"Python怎么封装远程连接的组件"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!#!
千家信息网最后更新 2024年09月28日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安全错误
数据库的锁怎样保障安全
武汉理工大学 数据库技术
境外服务器电子数据取证问题
数据库安装总结报告
服务器对传
vb导出sql数据库表名
mui 本地数据库
2021深度学习服务器硬件配置
宝安可靠网络数据库维护
途家在线网络技术有限公司
c 数据库.豆丁
c数据库连接超时
北京盛世恒信网络技术有限公司
宝山区全过程软件开发代理品牌
澳洲有网络安全专业吗
中软软件开发3
用友财务软件数据库完整正式版
5项互联网领先科技
深海迷航解锁数据库
步步高怎么开通服务器
正阳软件开发商
崇明区新能源网络技术产业化
药物警戒安全性数据库
手机网络安全怎样设置
服务器与客户端的通信安全模式
数据库查学生姓名命令
数据库识别不了accdb
数据库中更新表结构
澳洲有网络安全专业吗
计算机三级数据库编程
服务器主机未提供3d支持