Mardi - Parenthèses
Utilisez des parenthèses pour exécuter des commandes dans un sous-shell.
$ cat tst2
new_var=”xxxx”
echo $new_var
(new_var=”test”)
echo $new_var
$ ./tst2
xxxx
xxxx
Vous devez vous attendre à ce que ce script vous renvoie
xxxx
test
Parce que la seconde assignation est entre parenthèses elle est exécutée dans un sous-shell et (rappelez vous de l’astuce de Lundi) elle n’a aucun effet sur l’environnement du shell parent.
Vous souhaiterez exécuter de nombreuses commandes dans un sous-shell lorsque leur sortie est redirigée ou envoyée à une autre commande (pipe).
En guise d’illustration :
$ echo hello; echo world > outfile
hello
$ cat outfile
world
$ (echo hello; echo world) > outfile
$ cat outfile
hello
world
Si vous souhaitez en apprendre plus sur Mac OS X Unix visitez le Learning Center
cliquez ici.
- Pour les débutants : Le Tutoriel Mac OS X Unix
- Pour plus d’informations sur des sujets spécifiques : Mac OS X Advanced Unix
- Pour des réponses à des problèmes communs : Mac OS X How To
Chargement
Commentaires récents