Bonsoir,
Je suis en train d'écrire un programme Java qui fonctionnera sous Linux, et j'aimerais ajouter un shell linux soit pour excecuter des commandes en local soit via ssh à travers le réseau. Exécuter les commandes n'est pas un problème (avec entre autre Runtime.getRuntime().exec() ...) mais je n'arrive absolument pas à afficher le retour dans ces commandes.
J'aimerais donc en executant ces commandes avoir un retour dans la console (et après pourquoi pas dans le programme mais cest pas le plus important) depuis laquelle j'ai lancé le programme Java. Si quelqu'un a une idée à propos de ca, je suis preneur.
Donc j'ai essayé et ca marche à peu près. Faut que j'approfondisse. Le problème cest que je ne comprends pas vraiment tout ce qu'il raconte sur la page.
Si quelqu'un a une autre solution qui marche niquel je veux bien.
Merci pour ta réponse.
Message édité par Tom_ le 24-01-2007 à 23:44:35
lorill
Posté le 24-01-2007 à 23:54:10
solution: apprendre a se servir des flux
déjà, toi, il te faut un outputstream (l'input, c'est l'entrée du process, le clavier, quoi), et surtout, pas l'afficher, mais le lire.
Tom_
Posté le 25-01-2007 à 00:07:01
C'est clair faut que je me documente sur les flux.
Dans mon cas, il faut bien un inputstream :
Citation :
Remarque : au premier abord il peut paraître étrange de récupérer un InputStream pour le flux de sortie standard. Cependant il faut bien se placer au niveau de l'application Java. En effet, il s'agit de la sortie standard de l'application externe, l'application Java va lire ce flux qui est donc de son point de vue (en fait le notre) un flux d'entrée (idem pour le flux d'erreur). De même pour l'entrée standard de l'application externe, du point de vue de l'application Java il s'agit d'un flux de sortie puisqu'elle y écrit (d'où le OutputStream).