但是ssh库能否远程控制对应系统执行sh /text/text.sh?
时间: 2023-08-03 07:06:17 浏览: 89
`ssh` 库本身并没有提供直接执行远程命令的接口,但你可以使用 `paramiko` 库来实现。下面是一个示例代码,可以远程执行 `/text/text.sh` 脚本:
```python
import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('remote_host', username='username', password='password')
stdin, stdout, stderr = ssh.exec_command('sh /text/text.sh')
output = stdout.read().decode('utf-8')
error = stderr.read().decode('utf-8')
ssh.close()
```
其中,`remote_host` 是远程主机的 IP 或域名,`username` 和 `password` 分别是登录远程主机的用户名和密码。`exec_command` 方法可以在远程主机上执行指定的命令,`stdout` 和 `stderr` 分别是命令执行的标准输出和错误输出。在示例代码中,我们执行了一个 `sh /text/text.sh` 命令,并将标准输出和错误输出保存在 `output` 和 `error` 变量中,可以根据实际情况进行处理。最后,我们需要关闭 SSH 连接,以释放资源。
需要注意的是,`paramiko` 库本身也依赖于 `cryptography` 库,如果你的环境中没有安装 `cryptography` 库,也需要先安装。另外,远程主机需要安装并启动 SSH 服务,否则无法远程连接。
阅读全文