Re: Par ici la sortie...

Page principale

Répondre à ce message
Auteur: Olivier Guerrier
Date:  
À: guilde
Sujet: Re: Par ici la sortie...
Marc TERRIER a écrit :
> Et le fait est que ça marche, mais je ne capte pas la différence entre les deux,
> ni le pourquoi du comment. L'explication figure dans le bouquin en question,
> mais c'est clair comme du jus de chique, alors si quelqu'un de trop balèze ;-)
> pouvait m'expliquer en *vraiment clair*, ce serait sympa...


Essayons ... (je suis pas doué pour les explication :) )

initialement, stdout pointe sur /dev/fd/1 et stderr pointe sur /dev/fd/2.

> # ma_commande 2>&1 >fichier.log

Dans ce cas, tu demandes au shell de faire:
1 - stderr = stdout (qui pointe /dev/fd/1)
2 - stdout = fichier.log
3 - ma_commande

> # ma_commande >fichier.log 2>&1

Dans ce cas, tu demandes au shell de faire:
1 - stdout = fichier.log
2 - stderr = stdout (qui vaut maintenant fichier.log)
3 - ma_commande

J'espère que c'est clair ;)

le plus simple pour jamais se gourrer, c'est de faire:
$ ma_commande >fichier.log 2>fichier.log
ou (moins portable):
$ ma_commande &>fichier.log

Olivier