python paramiko实现ssh远程访问的方法
安装paramiko后,看下面例子:
代码如下:
import paramiko #设置ssh连接的远程主机地址和端口 t=paramiko.Transport((ip,port)) #设置登录名和密码 t.connect(username=username,password=password) #连接成功后打开一个channel chan=t.open_session() #设置会话超时时间 chan.settimeout(session_timeout) #打开远程的terminal chan.get_pty() #激活terminal chan.invoke_shell() 然后就可以通过chan.send('command')和chan.recv(recv_buffer)来远程执行命令以及本地获取反馈。 例如: chan.send('pwd') print chan.recv(65535)
重点是,有些命令执行的时间长,不适当的receive回来可能得不到想要的结果,可以使用time.sleep()进行等待,或使用一些条件循环。
例如:
代码如下:
str=chan.recv(recv_buffer) while not str.endswith('#'): str=chan.recv(recv_buffer)
相关推荐
lepton 2020-06-05
Jiajinjin 2020-05-18
LiHansiyuan 2020-04-15
colin00 2020-04-14
sshong 2020-04-14
风吹草动 2020-03-27
SDUTACM 2020-03-05
hulao 2020-02-12
学习备忘录 2019-12-30
千锋 2020-01-02
jacktangj 2019-12-30
xiangqiao 2019-12-13
pythonxuexi 2019-12-10
huangzonggui 2019-12-03
hulao 2019-11-30
坚持是一种品质 2019-11-09
专注于Python 2019-10-24
Dlg 2019-10-23