Python flux dans le terminal

nemolovich Messages postés 81 Date d'inscription   Statut Membre Dernière intervention   -  
nemolovich Messages postés 81 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

Voila j'aimerai savoir, si c'est possible, comment récupérer le flux d'un script dans le terminal d'ubuntu et s'en servir dans un script python, avec "sys.argv".

Par exemple ici:
echo test | wc

la commande "wc" s'applique sur le flux de sortie "test" affiché par la commande "echo",
Moi j'aimerai récupérer ce flux dans les arguments de mon script python afin de travailler sur cette sortie, comme par exemple:
python script1.py | python script2
Est-ce possible?

Merci.

3 réponses

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 432
 
Salut,

Je suppose qu'en mettant un shebang approprié dans tes scripts python, en les rendant exécutables par la suite et en les lançant comme suit :

./script1.py | ./script2.py

Ça devrait le faire, non ?

0
nemolovich Messages postés 81 Date d'inscription   Statut Membre Dernière intervention   12
 
Non je n'arrive pas à récupérer ce que j'affiche avec le premier en argument sur le second :(... Une autre idée? Peut-être y-a-t'il un autre moyen?
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 432
 
Es-tu sûr de ta syntaxe en python ?
0
nemolovich Messages postés 81 Date d'inscription   Statut Membre Dernière intervention   12
 
Oui, le programme fonctionne si je met en os.system() les paramètres en argument. Mais exemple tout bete:
#!/usr/bin/env python 

import sys 

if len(sys.argv)>1: 
 print sys.argv[1] 
else: 
 print "No Argv"


ce code par exemple, si je l'utilise comme suit:
./test.py test1| ./test.py

Il me dit qu'il n'y a aucun argument, or c'est là que j'aimerai les récupérer...
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 432
 
Là c'est plus un problème de syntaxe python qu'un simple problème d'entrée/sortie en shell ;-((

On va basculer sur le forum programmation ;-)
0
nemolovich Messages postés 81 Date d'inscription   Statut Membre Dernière intervention   12
 
Ok d'acc!

Peut-etre est-il récupéré ailleurs que dans le sys.argv?? Dans ce cas dans quoi?
0
nemolovich Messages postés 81 Date d'inscription   Statut Membre Dernière intervention   12
 
Up,

Personne n'aurait d'autres idées?

Merci
0