J'ai rencontré un problème de maux de tête.
Je veux exécuter plusieurs commandes en arrière-plan, donc je veux les démarrer dans bash une par une.
Il est facile de démarrer une commande dans le shell linux en arrière-plan, comme ceci :
myCommand &
Il est également facile de lancer plusieurs commandes, comme ceci :
myCommand1 && myCommand2
ou
myCommand1 ; myCommand2
Mais si je veux exécuter plusieurs commandes en arrière-plan, j'ai essayé le format de commande suivant, mais j'ai échoué :
myCommand1 & && myCommand2 &
ou
myCommand1 & ; myCommand2 &
Les deux formats échouent. Comment puis-je exécuter plusieurs commandes qui ont &
en une seule ligne de commande ?
Réponse acceptée :
Utilisez ().
Si vous souhaitez les exécuter de manière séquentielle :
(myCommand1; myCommand2) &
ou
(myCommand1 &) && (myCommand2 &)
Si vous voulez qu'ils s'exécutent en parallèle :
myCommand1 & myCommand2 &
En bash, vous pouvez également utiliser ceci (l'espace derrière le { et le ; sont obligatoires) :
{ myCommand1 && myCommand2; } &