in Tester le contenu d'une variableEt si je rajoute ca : >&2; exit 1Envoyé par BEEP-BEEP
ca veut dire quoi ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part echo "KO" >&2; exit 1
in Tester le contenu d'une variableEt si je rajoute ca : >&2; exit 1Envoyé par BEEP-BEEP
ca veut dire quoi ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part echo "KO" >&2; exit 1
>&2 (ou bien 1>&2) veut dire "envoyer ce qui devrait être écrit sur la sortie standard (stdout) là où va la sortie d'erreur (stderr)".
Grosso modo, echo "KO" écrit "KO" sur la stdout et echo "KO" >&2 redirige la sortie standard vers la stderr, et donc écrit "KO" sur la stderr.
Et le exit 1 demande à quitter le programme courant.
(le ; sert juste à séparer et enchaîner les 2 instructions)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $ { echo "so" ; echo "se" 1>&2; } > /tmp/so.txt 2> /tmp/se.txt $ cat /tmp/so.txt so $ cat /tmp/se.txt se
OK.
Et si j'ai bien compris le cours de ce forum :
&> /dev/null signifie :
redirection simultanée de la sortie standard (descripteur 1) et de la sortie d'erreur standard (descripteur 2), dans le fichier "poubelle" /dev/null pour que cela s'affiche nul part, en fait.
C'est équivalent à :
>/dev/null 2>&1
Bonjour
Déjà ce n'est pas &>truc mais canalX>&canalY (le "&" se trouve après la redirection, pas avant) et ça signifie littéralement "redirige le canal X vers le canal Y".
Redirige le canal 1 (1 implicite) vers /dev/null et redirige le canal 2 vers le canal 1 (donc vers /dev/null par ricochet)
Mon Tutoriel sur la programmation «Python»
Mon Tutoriel sur la programmation «Shell»
Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
Et on poste ses codes entre balises [code] et [/code]
Partager