pipe

Le
Thomas
bonjour :-)


est il possible de rediriger en entrée d'une autre commande les erreurs
d'une commande au lieu ou même en plus de sa sortie standard ?


je dois absolument exécuter une certaine commande une seule fois

est il possible de mettre sa sortie à la fois en entier dans un fichier
log, et en entrée de grep pour faire un test ?

--
j'agis contre l'assistanat, je travaille dans une SCOP !
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Paul Gaborit
Le #771760
À (at) Wed, 19 Sep 2007 17:55:32 +0200,
Thomas
est il possible de rediriger en entrée d'une autre commande les erreurs
d'une commande au lieu ou même en plus de sa sortie standard ?


Oui... mais la méthode dépend du type de shell utilisé (en gros, si
c'est un shell type 'sh' ou type 'csh').

je dois absolument exécuter une certaine commande une seule fois

est il possible de mettre sa sortie à la fois en entier dans un fichier
log, et en entrée de grep pour faire un test ?


Regardez du côté de la commande 'tee'.

--
Paul Gaborit -
Luc.Habert.00__arjf
Le #771759
Thomas :

est il possible de rediriger en entrée d'une autre commande les erreurs
d'une commande au lieu


ploum 2>&1 > /dev/null | plim

ou même en plus de sa sortie standard ?


ploum 2>&1 | plim

Thomas
Le #771756
In article (Luc Habert) wrote:

Thomas :

est il possible de rediriger en entrée d'une autre commande les erreurs
d'une commande au lieu


ploum 2>&1 > /dev/null | plim

ou même en plus de sa sortie standard ?


ploum 2>&1 | plim


merci :-)

--
j'agis contre l'assistanat, je travaille dans une SCOP !


Thomas
Le #771755
In article Paul Gaborit
À (at) Wed, 19 Sep 2007 17:55:32 +0200,
Thomas
est il possible de rediriger en entrée d'une autre commande les erreurs
d'une commande au lieu ou même en plus de sa sortie standard ?


Oui... mais la méthode dépend du type de shell utilisé (en gros, si
c'est un shell type 'sh' ou type 'csh').


si ce que Luc a indiqué marche pour sh, c'est bon :-)


je dois absolument exécuter une certaine commande une seule fois

est il possible de mettre sa sortie à la fois en entier dans un fichier
log, et en entrée de grep pour faire un test ?


Regardez du côté de la commande 'tee'.


le pb, c'est que je log un script entier qui va contenir tout ça,
alors mettre un petit bout du log dans un fichier séparé ça va pas être
pratique :-/

est ce qu'il y aurais pas plutôt une option à grep qui permettre de
faire sortir tout ce qui est entré, et qu'il y ait que le code de sortie
qui donne l'indication ?
le contraire de -q en fait :-)
(j'ai pas trouvé en regardant rapidement man grep)

--
j'agis contre l'assistanat, je travaille dans une SCOP !


mpg
Le #771753
Le (on) jeudi 20 septembre 2007 03:00, Thomas a écrit (wrote) :
le pb, c'est que je log un script entier qui va contenir tout ça,
alors mettre un petit bout du log dans un fichier séparé ça va pas être
pratique :-/

est ce qu'il y aurais pas plutôt une option à grep qui permettre de
faire sortir tout ce qui est entré, et qu'il y ait que le code de sortie
qui donne l'indication ?
le contraire de -q en fait :-)
(j'ai pas trouvé en regardant rapidement man grep)

Je suis pas sûr d'avoir compris ce que tu veux faire, mais on dirait que

c'est un truc comme ça :
<des trucs> | grep -optionkitu <motif> > log
de sorte que :
1. log contienne la même chose que si tu n'avair pas mis de grep dans la
chaîne,
2. tu puisses récupérer le code de sortie de grep pour faire un test
ensuite.

Si c'est ça, je me trompe peut-être, mais ne serai-t-il pas plus naturel de
faire quelque chose comme
<des trucs> > log
if grep -q motif log ...

Bon, désolé si je suis à côté de la plaque...

Manuel.

Matthieu Moy
Le #771499
Thomas
Regardez du côté de la commande 'tee'.


le pb, c'est que je log un script entier qui va contenir tout ça,
alors mettre un petit bout du log dans un fichier séparé ça va pas être
pratique :-/


Je comprends pas le problème.

commande | tee fichier.log | grep -q machin

Te met toute la sortie de « commande » dans fichier.log, et le grep te
dis si il a trouvé machin dans cette sortie.

--
Matthieu


Thomas
Le #770647
In article Matthieu Moy
Thomas
Regardez du côté de la commande 'tee'.


le pb, c'est que je log un script entier qui va contenir tout ça,
alors mettre un petit bout du log dans un fichier séparé ça va pas être
pratique :-/


Je comprends pas le problème.

commande | tee fichier.log | grep -q machin

Te met toute la sortie de « commande » dans fichier.log, et le grep te
dis si il a trouvé machin dans cette sortie.


un fichier "script2" va contenir

commande1
commande2 | tee log2 | grep -q machin
commande3


et un fichier "script1" va contenir

script2 &> log1


donc normalement, tout devrait être dans log1,
mais là, une petite partie de log1 va se retrouver dans log2 à la place

--
j'agis contre l'assistanat, je travaille dans une SCOP !



Thomas
Le #770646
In article wrote:

Le (on) jeudi 20 septembre 2007 03:00, Thomas a écrit (wrote) :
le pb, c'est que je log un script entier qui va contenir tout ça,
alors mettre un petit bout du log dans un fichier séparé ça va pas être
pratique :-/

est ce qu'il y aurais pas plutôt une option à grep qui permettre de
faire sortir tout ce qui est entré, et qu'il y ait que le code de sortie
qui donne l'indication ?
le contraire de -q en fait :-)
(j'ai pas trouvé en regardant rapidement man grep)

Je suis pas sûr d'avoir compris ce que tu veux faire, mais on dirait que

c'est un truc comme ça :
<des trucs> | grep -optionkitu <motif> > log
de sorte que :
1. log contienne la même chose que si tu n'avair pas mis de grep dans la
chaîne,
2. tu puisses récupérer le code de sortie de grep pour faire un test
ensuite.


exactement

je croyais avoir été clair
voir mon autre réponse pour encore plus de précision


Si c'est ça, je me trompe peut-être, mais ne serai-t-il pas plus naturel de
faire quelque chose comme
<des trucs> > log
if grep -q motif log ...


ça me satisfait pas totalement, mais comme la sortie devrait être de
seulement une ligne en toutes circonstances, je devrais pouvoir utiliser
tail sur le log global

merci pour l'idée :-)


et merci à tous pour votre aide :-)

--
j'agis contre l'assistanat, je travaille dans une SCOP !


Publicité
Poster une réponse
Anonyme