<pre class="brush:python;gutter:true;"># 创建SSH对象
ssh = paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname=hostname,port=22, username=username, password=password)

# 执行命令
stdin, stdout, stderr = ssh.exec_command('sh run.sh')

# 获取命令结果
result = stdout.read()
ssh.close()
print(result)

执行的命令是 启动脚本,没有任何的输出,在运行的时候,卡在了 result = stdout.read(),一直没有执行下一步

当stdout中没有数据或有一行没有输出l时(即在sh脚本中的read语句中),就会发生这种情况。尝试设置“get\_pty=True”,然后只读取stdout中的字节

<pre class="brush:python;gutter:true;">stdin, stdout, stderr = ssh.exec_command('sh run.sh',get_pty=True)

标签: result, read, ssh, 打印输出, paramiko, stdout, 卡住, sh

相关文章推荐

添加新评论,含*的栏目为必填