这确实是在完成之前返回的paramiko SSH
exec_command(shell脚本)返回的副本,但是那里的答案并不十分详细。所以…
如您所见,这
exec_command是一个 非阻塞 呼叫。因此,您必须使用以下任一方法来等待远程命令的完成:
Channel.exit_status_ready
如果要对命令完成情况进行非阻塞检查(即:池化)Channel.recv_exit_status
如果您要阻塞直到命令完成(然后返回退出状态-退出状态0表示正常完成)。
在您的特定情况下,您需要稍后:
stdin, stdout, stderr = client.exec_command(filedelete) # Non-blocking callexit_status = stdout.channel.recv_exit_status() # Blocking callif exit_status == 0: print ("File Deleted")else: print("Error", exit_status)client.close()
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)