我正在编写代码以执行多个命令并将其写到文件上,但是面临这样的问题,即它不等命令执行完毕。每个命令需要花费可变的时间才能完成。我希望此功能在执行另一个命令之前先等待一个命令完成。我已将实际命令替换为(command x)
def user_debug_command_output ( user_ip, user_mac ):
ssh_one = ssh.invoke_shell()
print "Interactive SSH session established"
print str(datetime.datetime.now())
ssh_one.send("command 1 \n")
ssh_one.send("commands 2\n" %user_ip)
time.sleep(.1)
ssh_one.send("commands 3 %s \n" %user_mac)
time.sleep(.1)
ssh_one.send("command 4\n")
time.sleep(5)
while not ssh_one.recv_ready():
time.sleep(5)
output_user = ssh_one.recv(-1)
print output_user
#time.sleep(5)
fo = open ("user_debug_output.txt", 'w' )
fo.write ( output_user.strip())
fo.close()