|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre chevronné
![]() ![]() |
Dans ma soirée "créativité", ci-jointe une autre proposition de FAQ du genre de question qu'on se pose inéluctablement à un moment ou un autre :
RESUME DE QUELQUES REDIRECTIONS POSSIBLES DES SORTIES : ¶ avec : STDOUT: la sortie standard d'une commande STDERR: sortie "erreur" d'une commande 1) Capturer les sorties STDERR et STDOUT d'une commande : 2) Capturer uniquement la sortie STDOUT et éliminer la sortie STDERR d'une commande: 3) Capturer uniquement la sortie STDERR et éliminer la sortie STDOUT 4) Fusionner SDTOUT et STDERR pour capturer STDERR et renvoyer STDOUT vers l'ancien STDERR : 5) Capturer les sorties STDOUT et STDERR d'une commande dans des fichiers distincts Code :
mon_prog args 1>mon_prog.stdout 2>mon_prog.stderr |
|
|
20
|
|
|
#2 | ||
|
Membre Expert
![]() |
sur les redirections, il y avait eu une question sur ce thread :
Comment rediriger stdout et stderr au même endroit mais en ajoutant un préfix aux erreurs (et en conservant l'ordre) ? J'avais proposé de commencer par rediriger stderr ainsi (mais ça ne marche que sous bash je pense): Code :
|
||
|
|
20
|
|
|
#3 |
|
Membre chevronné
![]() ![]() |
C'est une bonne suggestion mais à mon avis, ce genre de problématique s'inscrirait dans le cadre d'un tuto sur les redirections, ou dans la FAQ sur sed, car cette technique n'est pas de la redirection "pure" mais une combinaison de deux techniques.
|
|
|
10
|
|
|
#4 |
|
Membre Expert
![]() |
Je ne suis pas entièrement d'accord
Cela n'a rien à voir avec sed qui n'est utilisé ici que pour l'exemple. L'intérêt n'est pas le sed mais bien l'utilisation de exec pour rediriger une sortie (stdout, stderr, ...) vers elle-même mais en la faisant passer auparavant par un process quelconque ce qui permet d'éviter une désynchronisation entre les flux ! Après, que cela ait une place dans une faq ou un tuto, là, j'avoue que je n'ai pas d'avis ! |
|
|
10
|
|
|
#5 |
|
Membre chevronné
![]() ![]() |
hum "stdout et stderr au même endroit", es-tu certain ... ?
Ou alors il faudrait être plus précis du genre: 7) Modifier le format de sortie de STDERR -pas testé - Mais je reste très dubitatif quant à l'intérêt pour la FAQ : six points, c'est déjà pas mal, voire trop pour une FAQ. C'est pour ça que je me cantonne à la redirection stricte. D'autant plus qu'en piochant dans les points précédents, tu as déjà la réponse à cette problématique. Donc c'est redondant puisque ça n'apporte pas de nouveauté quant à la notion de redirection par rapport aux points précédents. |
|
|
10
|
|
|
#6 |
|
Membre Expert
![]() |
J'ai effectivement été incomplet; naturellement, il faut compléter avec des redirections classiques comme par exemple le point 6 de ta faq. L'intérêt de cette commande est de permettre de rediriger les 2 sorties au même endroit tout en permettant un traitement distinct (par exemple, ajouter un préfixe) et en conservant l'ordre.
edit: correction par rapport aux autres posts |
|
|
10
|
Copyright © 2000-2013 - www.developpez.com