Python使用Paramiko控制liunx第三方库


Posted in Python onMay 20, 2020

paramiko是一个基于SSH用于连接远程服务器并执行相关操作(SSHClient和SFTPClinet,即一个是远程连接,一个是上传下载服务),使用该模块可以对远程服务器进行命令或文件操作,值得一说的是,fabric和ansible内部的远程管理就是使用的paramiko来现实。

Paramiko 是Python 用于控制liunx中文件的第三方库,可创建文件,修改,删除文件的内容等;

代码实例:

# -*- coding:utf-8 -*-
import paramiko
 
class ssh(object):
  def __init__(self,host,port,user,password):
    self.host = host
    self.port = port
    self.user = user
    self.password = password
    self.ssh_client = paramiko.SSHClient()
    self.ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    self.ssh_client.connect(self.host, self.port, self.user, self.password)
 
  #执行指令返回文本字符串
  def sftp_exec_command(self,command):
    arrconfiglist = [""]
    try:
      std_in, std_out, std_err = self.ssh_client.exec_command(command)
      for line in std_out:
        arrconfiglist.append(line.strip("\n"))
      del arrconfiglist[0]
      self.ssh_client.close()
      return arrconfiglist
    except Exception as e:
      print(e,"ssh ERROR")
    finally:
      self.ssh_client.close()
 
  #执行指令无返回
  def sftp_exec_norecommand(self,command):
    try:
      self.ssh_client.exec_command(command)
      self.ssh_client.close()
    except Exception as e:
      print(e,"ssh ERROR")
    finally:
      self.ssh_client.close()
 
'''
在别的项目中被调用使用如下方法
import ssh as ssh
 
if __name__ == '__main__':
  ssh.ssh().sftp_exec_command("--command information--")
'''
 
'''
if __name__ == '__main__':
  rect = ssh().sftp_exec_command("")
  print(rect)
'''

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中实现字符串类型与字典类型相互转换的方法
Aug 18 Python
Python中函数的参数定义和可变参数用法实例分析
Jun 04 Python
python实现爬虫统计学校BBS男女比例之数据处理(三)
Dec 31 Python
Python网络编程中urllib2模块的用法总结
Jul 12 Python
python实现上传下载文件功能
Nov 19 Python
Python编程之变量赋值操作实例分析
Jul 24 Python
python多进程(加入进程池)操作常见案例
Oct 21 Python
Pytorch mask_select 函数的用法详解
Feb 18 Python
django model的update时auto_now不被更新的原因及解决方式
Apr 01 Python
Python新手如何理解循环加载模块
May 29 Python
Python 求向量的余弦值操作
Mar 04 Python
深入理解python多线程编程
Apr 18 Python
解决django框架model中外键不落实到数据库问题
May 20 #Python
Django ForeignKey与数据库的FOREIGN KEY约束详解
May 20 #Python
让Django的BooleanField支持字符串形式的输入方式
May 20 #Python
django 解决model中类写不到数据库中,数据库无此字段的问题
May 20 #Python
基于Python脚本实现邮件报警功能
May 20 #Python
完美解决Django2.0中models下的ForeignKey()问题
May 19 #Python
Django 解决model 反向引用中的related_name问题
May 19 #Python
You might like
删除数组元素实用的PHP数组函数
2008/08/18 PHP
如何在PHP中使用正则表达式进行查找替换
2013/06/13 PHP
zf框架db类的分页示例分享
2014/03/14 PHP
php cookie中点号(句号)自动转为下划线问题
2014/10/21 PHP
ThinkPHP开发框架函数详解:C方法
2015/08/14 PHP
JavaScript的Cookies
2008/01/16 Javascript
正则表达式中特殊符号及正则表达式的几种方法总结(replace,test,search)
2013/11/26 Javascript
使用GruntJS构建Web程序之安装篇
2014/06/04 Javascript
javascript中with()方法的语法格式及使用
2014/08/04 Javascript
用JavaScript实现页面重定向功能的教程
2015/06/04 Javascript
javascript中html字符串转化为jquery dom对象的方法
2015/08/27 Javascript
AngularJS实现星星等级评分功能
2016/09/24 Javascript
jQuery File Upload文件上传插件使用详解
2016/12/06 Javascript
js中作用域的实例解析
2017/03/16 Javascript
jQueryMobile之窗体长内容的缺陷与解决方法实例分析
2017/09/20 jQuery
JavaScript实现汉字转换为拼音及缩写的方法示例
2019/03/28 Javascript
javascript实现前端成语点击验证
2020/06/24 Javascript
javascript全局自定义鼠标右键菜单
2020/12/08 Javascript
Python实现二分法算法实例
2015/02/02 Python
对python遍历文件夹中的所有jpg文件的实例详解
2018/12/08 Python
opencv转换颜色空间更改图片背景
2019/08/20 Python
python列表切片和嵌套列表取值操作详解
2020/02/27 Python
Jupyter Notebook输出矢量图实例
2020/04/14 Python
python 实现简易的记事本
2020/11/30 Python
viagogo英国票务平台:演唱会、体育比赛、戏剧门票
2017/03/24 全球购物
意大利在线购买隐形眼镜网站:VisionDirect.it
2019/03/18 全球购物
可持续木材、生态和铝制太阳镜:Proof Eyewear
2019/07/24 全球购物
大学生职业生涯规划书模版
2013/12/30 职场文书
家庭教育先进个人事迹材料
2014/01/24 职场文书
职工代表大会主持词
2014/04/01 职场文书
创业女性典型材料
2014/05/02 职场文书
天地会口号
2014/06/17 职场文书
2014年保险业务员工作总结
2014/12/23 职场文书
上市公司董事长岗位职责
2015/04/16 职场文书
MATLAB 如何求取离散点的曲率最大值
2021/04/16 Python
用Python爬取各大高校并可视化帮弟弟选大学,弟弟直呼牛X
2021/06/11 Python