Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
astuce:redirection_bash [2024/01/19 14:49] – créée Thomas | astuce:redirection_bash [2024/01/19 14:53] (Version actuelle) – Thomas | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Faire des redirections bash ====== | ====== Faire des redirections bash ====== | ||
- | stdin = entrée | + | stdin = entrée\\ |
- | stdout = sortie normale | + | stdout = sortie normale |
- | stderr = erreur | + | stderr = erreur |
- | [code]ls -d / /non-exist 1> stdout.log 2> stderr.log[/code] | + | <code>ls -d / /non-exist 1> stdout.log 2> stderr.log</code> |
Redirige stdoud vers le fichier stdout.log et les erreurs vers stderr.log. | Redirige stdoud vers le fichier stdout.log et les erreurs vers stderr.log. | ||
- | [code]ls -d / /non-exist 2>&1[/code] | + | <code>ls -d / /non-exist 2>&1</code> |
Redirige les erreurs vers la stdout au lieu de stderr. | Redirige les erreurs vers la stdout au lieu de stderr. | ||
- | [code]ls -d / /non-exist 1>&2[/code] | + | <code>ls -d / /non-exist 1>&2</code> |
Redirige stdout vers les erreurs stderr. | Redirige stdout vers les erreurs stderr. | ||
- | [code]result=$($i 2>& | + | <code>result=$($i 2>& |
- | Enregistre stdout et stderr dans la variable $result. Il n'est pas possible de stocker directement stderr d'où la redirection vers stdout. | + | Enregistre stdout et stderr dans la variable $result. Il n'est pas possible de stocker directement stderr |
- | [code]{ err=$(/ | + | <code>{ err=$(/ |
Enregistre uniquement stderr dans la variable $err et affiche stdout sur la console. Il est nécessaire de rediriger stdout vers &3 pour ne conserver que les errreurs dans &1. Puis à la fin on redirige &3 vers &1. | Enregistre uniquement stderr dans la variable $err et affiche stdout sur la console. Il est nécessaire de rediriger stdout vers &3 pour ne conserver que les errreurs dans &1. Puis à la fin on redirige &3 vers &1. |