GNU/Linux >> Znalost Linux >  >> Linux

Jak spustím více příkazů na pozadí v bash na jednom řádku?

V poslední verzi musíte přidat nějaké závorky --

(sleep 2 &) && (sleep 3 &)

nebo to také funguje --

(sleep 2 &) ; (sleep 3 &)

Jak přesně chcete, aby běželi? Pokud chcete, aby byly spuštěny na pozadí a spustit postupně , udělali byste něco takového:

{ sleep 2; sleep 3; } &

Pokud chcete sleep 3 spustit, pouze pokud sleep 2 úspěšně, pak:

sleep 2 && sleep 3 &

Pokud byste naopak chtěli, aby běžely paralelně na pozadí , můžete místo toho udělat toto:

sleep 2 & sleep 3 &

A tyto dvě techniky lze kombinovat, například:

{ sleep 2; echo first finished; } & { sleep 3; echo second finished; } &

Bash je bash, často existuje mnoho různých technik ke splnění stejného úkolu, i když někdy mezi nimi existují jemné rozdíly.


Linux
  1. Jak používat příkazy historie Bash

  2. Jak časový limit skupiny příkazů v Bash

  3. Jak spustit příkaz na pozadí se zpožděním?

  1. Jak spustit jeden příkaz na více vzdálených systémech najednou

  2. Jak spustit příkazy bash Linuxu ve skriptu PERL?

  3. Jak spustit více příkazů, které mají &v jednom příkazovém řádku?

  1. Jak poslat Stdout do více příkazů?

  2. Jak spustit proces Rsync na pozadí

  3. Jak napsat víceřádkový řetězec pomocí Bash s proměnnými?