Comme ça :
$ command >>output 2>>error
Ajoutez-les simplement sur une seule ligne command 2>> error 1>> output
Cependant, notez que >>
est à ajouter si le fichier contient déjà des données. Alors que, >
écrasera toutes les données existantes dans le fichier.
Donc, command 2> error 1> output
si vous ne souhaitez pas ajouter.
Juste pour compléter, vous pouvez écrire 1>
comme juste >
puisque le descripteur de fichier par défaut est la sortie. donc 1>
et >
c'est la même chose.
Alors, command 2> error 1> output
devient, command 2> error > output
Essayez ceci :
your_command 2>stderr.log 1>stdout.log
Plus d'informations
Les chiffres 0
via 9
sont des descripteurs de fichiers dans bash.0
signifie entrée standard, 1
représente la sortie standard, 2
représente l'erreur standard. 3
à 9
sont disponibles pour tout autre usage temporaire.
Tout descripteur de fichier peut être redirigé vers un fichier ou vers un autre descripteur de fichier à l'aide de l'opérateur >
. Vous pouvez à la place utiliser l'opérateur >>
pour ajouter à un fichier au lieu d'en créer un vide.
Utilisation :
file_descriptor > filename
file_descriptor > &file_descriptor
Veuillez vous référer au Guide de script bash avancé :Chapitre 20. Redirection d'E/S.
Ou si vous aimez mélanger les sorties (stdout &stderr) dans un seul fichier, vous pouvez utiliser :
command > merged-output.txt 2>&1