12
Je lance un script shell depuis une machine Linux distante en utilisant paramiko. Le script shell est lancé et exécute une commande make -j8. Cependant, la commande exec_command retourne avant la fin de make.paramiko SS_ex_command (shell script) retourne avant la fin
Si je lance le script sur la machine locale, il s'exécute correctement.
Quelqu'un pourrait-il m'expliquer ce comportement?
Quel est le but de ces now()? Il semble qu'ils vont tous courir très vite les uns après les autres? Voulez-vous attendre que l'application se termine, vous auriez besoin d'un 'while while channel.recv_exit_status():' wait loop? Si c'est le cas, une fois que recv_exit_status() renvoie True, est-il garanti que stdout.channel.recv_ready() est True s'il y a des données sur stdout? Il semble que parfois ce n'est pas le cas. –
ce comportement est documenté [ici] (http://paramiko-docs.readthedocs.org/en/latest/api/channel.html#paramiko.channel.Channel.recv_exit_status) – miraculixx
bizarrement, en utilisant stdout.channel.recv_exit_status() bloque mon code pour toujours –