使用python中有一个paramiko模块来实现python SSH客户端,与SSH服务器交互时,需要注意有交互式和非交互式的区别。
只执行单条命令,之后就断开链接,可以使用非交互方式。执行多条命令,或者基于前面的输出结果来判断后续要执行的命令,需要使用交互式方式。
我在写自动化测试用例时,就尝试使用非交互方式去连接一个只支持交互方式的SSH服务器,就怎么也读不到返回结果。换成交互式后就可以了。
需要注意的是,命令后面记得加“\n”。
下面内容转自: https://blog.csdn.net/u012322855/article/details/77839929/
python中有一个paramiko,功能强大,用来做SSH比较方便
先上代码
import paramiko
class SSHConnection(object):
def __init__(self, host, port, username, password):
self._host = host
self._port = port
self._username = username
self._password = password
self._transport = None
self._sftp = None
self._client = None
self._connect() # 建立连接
def _connect(self):
transport = paramiko.Transport((self._host, self._port))