Au lieu de saisir les commandes les unes après les autres et d’attendre la fin de leur exécution avant de lancer la suivante, il est possible d’enchaîner plusieurs commandes sur la même ligne, en les séparant par un point-virgule :
[nicolas]$ date dim. avril 1 16:06:40 CEST 2018 [nicolas]$ ps PID TTY TIME CMD 4511 pts/1 00:00:00 bash 4613 pts/1 00:00:00 ps [nicolas]$ date ; ps dim. avril 1 16:07:12 CEST 2018 PID TTY TIME CMD 4511 pts/1 00:00:00 bash 4624 pts/1 00:00:00 ps
Ces enchaînements sont pratiques lorsque plusieurs commandes longues doivent être lancées successivement, sans que l’utilisateur ait à intervenir.
Les espaces autour du ; sur la ligne de commande ne sont pas obligatoires mais apportent une meilleure lisibilité.
Dans l’enchaînement cmd1 ; cmd2 ; cmd3, la commande cmd2 n’est exécutée qu’à la fin de la commande cmd1 ; de même, cmd3 est lancée lorsque cmd2 est terminée. Par contre, il n’y a aucun lien entre ces trois commandes ; c’est-à-dire que l’exécution d’une commande n’est pas conditionnée par le résultat (code retour) de la précédente.
Dans un script shell, le point-virgule permet de présenter plusieurs instructions sur une même ligne.
Pour n’exécuter ...
Abonnement
tous les livres et vidéos ENI en illimité sans engagement
du livre imprimé ou du livre numérique