Ceci est une ancienne révision du document !


Faire des redirections bash

stdin = entrée stdout = sortie normale stderr = erreur

[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.

[code]ls -d / /non-exist 2>&1[/code] Redirige les erreurs vers la stdout au lieu de stderr.

[code]ls -d / /non-exist 1>&2[/code] Redirige stdout vers les erreurs stderr.

[code]result=$($i 2>&1)[/code] Enregistre stdout et stderr dans la variable $result. Il n'est pas possible de stocker directement stderr d'où la redirection vers stdout.

[code]{ err=$(/root/.cron/test/test1.sh 2>&1 1>&3); } 3>&1[/code] 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.

astuce/redirection_bash.1705672177.txt.gz · Dernière modification : 2024/01/19 14:49 de Thomas
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0