paramiko包学习及简单应用

Posted by FanHao on 2018-06-28

在我们的PyAuto的自动化平台有用到这个包模块,这是一个第三方包。拥有很强大的功能,可以通过SSH连接远程主机,实现执行命令、文件传输、SSH代理等功能。甚至你可以利用这个包,写一个SSH登录工具。目前在自动化平台主要用来连接Centos系统,发送并执行linux命令。

安装

1
pip install paramiko

源码分析

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import paramiko
#初始化对象s
s=paramiko.SSHClient()
#调用方法,使能连接不在host文件中的主机
s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
#调用connect方法连接主机
s.connect(hostname='192.168.1.1',port=22,username='admin',password='admin',timeout=10)
#发送并执行命令
stdin, stdout, stderr = s.exec_command('ifconfig wlan0')
#decode()方法,使输出结果排列整齐
Result=stdout.read().decode()
Err=stderr.read()
#打印结果
print(Result)
print(Err)
#关闭ssh连接
s.close()

包源码

paramiko包下的client.py文件中包含了SSHClient类