Je voudrais exécuter un programme via ssh et rediriger son entrée à partir d'un fichier. Le comportement du code ci-dessous:Comment envoyer EOF à stdin dans paramiko?
channel.exec_command('cat')
with open('mumu', 'r') as f:
text = f.read()
nbytes = 0
while nbytes < len(text):
sent = channel.send(text[nbytes:])
if sent == 0:
break
nbytes += sent
devrait être équivalent à (en supposant l'authentification à clé publique):
ssh [email protected] cat < mumu
Toutefois, l'application se bloque en attente pour plus d'entrée. Je pense que cela arrive parce que le flux stdin n'est jamais fermé. Comment je fais ça?
ce qui se passe à stdout et stderr alors? – Alexandru
@Alexandru: J'ai eu la mauvaise fonction. –