GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come eseguire più comandi che hanno e in una riga di comando?

Ho riscontrato un problema di mal di testa.

Voglio eseguire più comandi in background, quindi voglio avviarli in bash uno per uno.
È facile avviare un comando nella shell di Linux in background, proprio come questo:

myCommand &

È anche facile avviare più comandi, proprio come questo:

myCommand1 && myCommand2

o

myCommand1 ; myCommand2

Ma se voglio eseguire più comandi in background, ho provato il seguente formato di comando, ma non ci sono riuscito:

myCommand1 & && myCommand2 &

o

myCommand1 & ; myCommand2 &

Entrambi i formati falliscono. Come posso eseguire più comandi che hanno & in una riga di comando?

Risposta accettata:

Usa ().

Se vuoi eseguirli in sequenza:

(myCommand1; myCommand2) &

o

(myCommand1 &) && (myCommand2 &)

Se vuoi che funzionino in parallelo:

myCommand1 & myCommand2 &

In bash puoi anche usare questo (spazio dietro a { e; sono obbligatori):

{ myCommand1 && myCommand2; } &

Ubuntu
  1. Come eseguire un comando singolo su più sistemi remoti contemporaneamente

  2. Comandi programmati

  3. Come posso eseguire una funzione da uno script nella riga di comando?

  4. Come sostituire una stringa in più file nella riga di comando di Linux

  5. Come determinare quali opzioni della riga di comando gcc passa a ld per impostazione predefinita?

Come copiare un file con un comando in più directory su Linux

Copia di un file contemporaneamente in più posizioni tramite la riga di comando di Ubuntu

Come eseguire più comandi Linux in un unico comando

Spiegazione dei comandi Apt vs Apt-get:quale usare?

Come eseguire più comandi Linux contemporaneamente nel terminale Linux

Come posso modificare le righe precedenti in un comando a più righe in Bash?