Počkejte (příkaz) - Wait (command)
Vývojáři | AT&T Bell Laboratories |
---|---|
První vydání | Listopadu 1973 |
Operační systém | Unix a Unixový |
Typ | Příkaz |
v Unix mušle, Počkejte
je příkaz který se pozastaví až do provedení a proces na pozadí skončil.
Používání
Počkejte [n]
kde n je pid nebo ID úlohy aktuálně probíhajícího procesu na pozadí (úlohy). Li n není zadán, příkaz čeká, dokud nebudou ukončeny všechny úlohy známé vyvolávajícímu prostředí.
Počkejte normálně vrátí stav ukončení posledního zaměstnání, které skončilo. Může také vrátit 127 v případě, že n Určuje neexistující úlohu nebo nulu, pokud nebyly žádné úlohy, na které byste čekali.
Protože Počkejte
potřebuje znát tabulku úloh aktuálního prostředí pro provádění shellu, obvykle je implementována jako a vestavěný shell.
Příklad
Tento příkaz může být užitečný tam, kde lze část skriptu provést paralelně k implementaci bariéry, kde nadcházející část závisí na úspěšném dokončení předchozích částí.
Následující příklad načte src / adresář ze stroje s názvem iona použitím rsync a před vytvořením kombinace současně aktualizovat knihovny, na kterých tento program závisí.
#! / usr / bin / env bash# Paralelní aktualizační skript, který využívá příkaz čekání# Aktualizujte místní kopiirsync iona: src /. &# Upgradujte požadované knihovny nebo ukončete indikaci selhání, pokud make z nějakého důvodu selhaludělat -C lib || výstup 1# Počkejte, až se rsync ukončí (může se již stát) a dokončí úlohuPočkejteudělat
Počkejte na zadané ID ID úlohy:
$ ls -R /> / dev / null 2>&1 & # spustit jakýkoli dlouho běžící proces na pozadí[2] 1986$ Počkejte %2 # čeká na ukončení úlohy na pozadí číslo 2, poté se vrátí