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  
 