oct 172005
 

Exemples communs en Bash

Pour rediriger les flux de sorties standards sous Bash :


commande 1> fichier

Redirige la sortie standard générée par la commande (stdout) dans fichier


commande 2> fichier

Redirige la sortie d’erreur standard généré par la commande (stderr) dans fichier


commande 2>&1

Redirige stderr vers stdout


commande &> fichier
Redirige stdout et stderr dans fichier

commande &> /dev/null

enverra l’ensemble des sorties vers /dev/null.

Où commande est une commande du bash (telle que ls ou mkdir), ou un programme (vim ou emacs). Et fichier est un fichier quelconque.

Le bon ordre

Les sorties stdin et stdout sont des pointeurs. Si vous voulez mettre stdin et stdout vers /dev/null :


commande > /dev/null 2>&1

Dans l’autre sens, stderr sortira sur la console.

Idem, stderr et stdout vers un pipe :


commande | commande2 2>&1

L’inverse ne fonctionnera pas.

tcsh ou csh

Avec tcsh ou csh, il n’est pas possible – à ce que je sais – de rediriger séparément les deux canaux de sortie. On peut par contre les joindre de cette manière :


shutup >& /dev/null

ou


commande1 |& commande2

Sorry, the comment form is closed at this time.

   
© 2012 Karlesnine Suffusion theme by Sayontan Sinha