Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 17/10/2008, à 17:24

®om

[Résolu] Problème de redirection : > >&2 2>&1

J'ai une fonction qui écrit bonjour sur stderr :

f() { echo bonjour >&2; }

D'ailleurs, si je fais :

f 2> fichier

ça écrit bien bonjour dans le fichier.

Maintenant, un peu plus compliqué, j'ai besoin (peu importe pourquoi) de rediriger stderr sur stdout :

f 2>&1

Mais pourquoi :

f 2>&1 > fichier

n'écrit pas dans le fichier (mais sur stdout)

Alors que :

f 2>&1 | cat > fichier

fonctionne?

Hors ligne

#2 Le 17/10/2008, à 17:29

®om

Re : [Résolu] Problème de redirection : > >&2 2>&1

Ah, j'ai compris :

f > fichier 2>&1

(faut d'abord rediriger stdout pour que stderr pointe vers le "nouveau" stdout)

Hors ligne

#3 Le 17/10/2008, à 18:03

tiky

Re : [Résolu] Problème de redirection : > >&2 2>&1

Tu as aussi:

command &> fichier

ou

command >& fichier

Ça redirige stdout et stderr dans fichier. C'est plus rapide à écrire, par contre ce n'est pas Posix et c'est aujourd'hui considéré comme obsolète. À utiliser uniquement dans le shell directement et pas dans les scripts donc smile

Dernière modification par tiky (Le 17/10/2008, à 18:03)


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne