安裝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)
更多python paramiko實現ssh遠端存取的方法相關文章請關注PHP中文網!