1 lien privé
Cheat sheets commandes linux
Pour exécuter plusieurs commandes successivement (attendre que la précédente se termine) uniquement si la commande précédente s'est terminée avec succès, utilisez l'opérateur && entre les commandes. Par exemple (vous pouvez avoir un nombre quelconque de commandes) :
command_1 && command_2
Bash
Si vous ne vous souciez pas de l'état de sortie de la commande précédente et que vous souhaitez simplement exécuter une commande après la fin de la précédente, utilisez le séparateur ;. Exemple (vous pouvez avoir un nombre quelconque de commandes) :
command_1; command_2; command_3
Bash
Que faire si vous voulez exécuter une commande après que la précédente a fini de s'exécuter, mais seulement si cette commande précédente a échoué (si elle renvoie un état de sortie différent de 0). Dans ce cas, utilisez le séparateur ||. Par exemple (encore une fois, vous pouvez avoir un nombre quelconque de commandes) :
command_1 || command_2
Bash
Vous pouvez également mélanger ces opérateurs. Dans ce cas, vous pouvez regrouper les commandes en utilisant { et }. Pour que cela fonctionne, vous devez vous assurer que vous ajoutez un point-virgule (;) avant } et un espace après {. Par exemple :
command_1 || { command_2; command_3; }
Bash
Dans cet exemple :
Exécutez la commande 1 et attendez qu'elle se termine.
Si la "commande_1" échoue, passez à la commande suivante (||) :
Exécutez la "commande_2" et attendez qu'elle se termine.
quel que soit l'état de sortie de command_2, exécutez command_3 (;)
Un autre exemple :
{ command_1 && command_2; }; { command_3 && command_4; }
Bash
Dans cet exemple :
exécuter la commande_1 et attendre qu'elle se termine
si la commande_1 réussit, lancez la commande_2 et attendez qu'elle se termine (&&)
que la commande_2 ait réussi ou non, ou même qu'elle ait été exécutée ou non, lancez la commande_3 et attendez qu'elle se termine (le ; après le premier })
si la commande_3 réussit, lancez la commande_4 (&&)
Cette publication est une traduction de l'article how-to-run-command-after-previous-one:
https://www.linuxuprising.com/2021/11/how-to-run-command-after-previous-one.html