Pour les pipe et l'intéraction avec les autres programmes, tu peux utiliser le module subprocess en python.
Ce module permet d'ouvrir un programme et tu récupères au choix 1, 2 ou 3 flux : stdin, stdout et stderr. Tu peux donc facilement les connecter entre eux par la suite.
Exemple de remplacement de "dmesg | grep hda" en python (pour récupérer le résultat de la commande hein) :
p1 = Popen(["dmesg"], stdout=PIPE)
p2 = Popen(["grep", "hda"], stdin=p1.stdout, stdout=PIPE)
output = p2.communicate()[0]
[^] # Re: Bof hein
Posté par Pinaraf . En réponse au journal Vista : pas de shell ?. Évalué à 4.
Ce module permet d'ouvrir un programme et tu récupères au choix 1, 2 ou 3 flux : stdin, stdout et stderr. Tu peux donc facilement les connecter entre eux par la suite.
Exemple de remplacement de "dmesg | grep hda" en python (pour récupérer le résultat de la commande hein) :
p1 = Popen(["dmesg"], stdout=PIPE)
p2 = Popen(["grep", "hda"], stdin=p1.stdout, stdout=PIPE)
output = p2.communicate()[0]
cf la doc : http://www.python.org/doc/2.4.1/lib/module-subprocess.html(...)