• 幕客老师召集小伙伴
  • 运维高手36项修炼
  • python自动化运维项目实战
  • nginx从入门到实战
  • 阿里云与Centos7实战

DevOPS -python的paramiko和pexpect模块

幕客今天来给大家介绍paramiko和pexpect模块使用场景和功能区别:

一、各自介绍

pexpect和paramiko都是python模块,我们可以利用这两个模块实现ssh登陆,通途最多当然是对linux服务器自动化命令操作。

下面慕课分别介绍下两个模块:

pexpect 一个用来通过启动子程序,使用正则表达式对程序输出做出特定响应,以此实现与其自动交互的 Python 模块。

paramiko 一个基于Python实现的SSH远程安全连接,用于SSH远程执行命令、文件传输等功能的ssh客户端模块。

 

二、功能区别

从定义上我们可以看出一些各自的区别,假设我们需要用它们来作自动化任务,如果不进行模块改写,有如下使用上的一些缺陷:

模块 功能
pexpect

1、无法实现ssh的密钥登陆认证  

2、实现类似scp的拷贝文件功能

paramiko

1、无法实现类似pexpect的interact方法进行交互式命令输入

2、自身不支持多线程

 

三、使用场景

利用python来作自动化登陆,并执行命令。

    pexpect模块的使用偏向于偏交互式的使用,如:管理员需要登陆100台机器,每次都会手动执行不同的命令,如果通过

ssh的命令进行登陆,这样每次输入不同的密码、用户、主机地址等信息会是一个不小的工作量,用pexpect这个模块,就

可以帮我解决这个问题。

   paramiko模块实现ssh的登陆探测,因为其更加通用并且兼容各种ssh协议的操作系统和相关的环境。通用paramiko可以实现

类似sftp登陆验证。

 

关于python的自动化运维、pexpect、paramiko你还有什么想了解的地方,欢迎关注,我将实时提供你更多有用的知识!

我的技术网站:http://www.imoocc.com

 

 

DevOPS -python的paramiko和pexpect模块

Pingbacks已打开。

引用地址

暂无评论

发表评论