Python_paramiko_与linux交互

一、基础功能介绍 

# coding=utf-8
import paramiko
from time import sleep

# 建立通信
transport = paramiko.Transport(('192.168.0.7', 22))
print(transport)  # <paramiko.Transport at 0x5745ed0 (unconnected)>

# 建立连接
transport.connect(username='root', password='123456')
print(transport)  # <paramiko.Transport at 0x5745ed0 (cipher aes128-ctr, 128 bits) (active; 0 open channel(s))>
# 注意 active 此时为0

# 开启一个信道
channel = transport.open_session()
print(channel)  # <paramiko.Channel 0 (open) window=0 -> <paramiko.Transport at 0x5745ed0 (cipher aes128-ctr, 128 bits) (active; 1 open channel(s))>>
# 调用open_session后,active为1,表示已打开channel。此时只能下发命令,收不到回显

# 设置信道获取信息的超时时间。因为在调用 channel.recv(65535) 方法时 会阻塞执行,不设置就会卡死。
channel.timeout = 10

# 开启终端,进入交互模式
channel.get_pty()
channel.invoke_shell()

sleep(2)  # 是为了一次能显示完所有回显,如果不等待2秒,获取的回显可能不完整。

# 检查通道是否有数据。若没有,则返回False,注意:不能用来判断已回显完。当下发命令后,执行出现卡顿,在卡顿期间信道是没有数据的。
channelStatus = cha
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值