Příkazy pro Linux

Počkejte na příkaz v systému Linux

Počkejte na příkaz v systému Linux
Počkejte je vestavěný příkaz Linuxu, který čeká na dokončení jakéhokoli spuštěného procesu. Počkejte příkaz se používá s konkrétním ID procesu nebo ID úlohy. Pokud je v shellu spuštěno více procesů, pak aktuální shell bude znát pouze ID procesu posledního příkazu. Pokud je tentokrát spuštěn příkaz čekání, bude použit pro poslední příkaz. Pokud s příkazem wait není zadáno žádné ID procesu nebo ID úlohy, bude čekat na dokončení všech aktuálních podřízených procesů a vrátí stav ukončení.

Hodnota stavu ukončení příkazu čekání závisí na příkazu označeném posledním zadaným operandem. Když se jakýkoli proces ukončí neobvykle, bude stav ukončení větší než 128 a bude se lišit od hodnot stavu ukončení jiných příkazů. Počkejte příkaz ukončí s hodnotou 0, když volá bez operandů a všechny ID procesu jsou známé aktuálnímu shellu, byly ukončeny. Pokud příkaz čekání zjistí jakoukoli chybu, vrátí jakoukoli hodnotu od 1 do 126. Pokud je poslední ID procesu neznámé, pak čeká na ukončení příkazu s hodnotou 127. Jak můžete použít příkaz čekání v systému Linux, je uveden v tomto výukovém programu.

Příklad 1: Použití příkazu čekání pro více procesů

Po provedení následujícího skriptu poběží na pozadí dva procesy a ID procesu prvního příkazu echo se uloží do proměnné $ process_id. Když je příkaz wait spuštěn s $ process_id, pak další příkaz počká na dokončení úkolu prvního příkazu echo. Druhý příkaz čekání se používá s '$!'a to označuje ID procesu posledního spuštěného procesu. ''$?'se používá ke čtení stavové hodnoty příkazu čekání.

#!/ bin / bash
echo "testing wait command1" &
process_id = $!
echo "testing wait command2" &
počkejte $ process_id
echo Úloha 1 byla ukončena se stavem $?
počkejte $!
echo Úloha 2 byla ukončena se stavem $?

Výstup:

$ bash počkat1.sh

Příklad 2: Po použití příkazu kill otestujte příkaz čekání

V následujícím skriptu se po ukončení procesu provede příkaz čekání. příkaz sleep je spuštěn jako proces na pozadí a příkazem kill je spuštěn proces ukončen. Poté je spuštěn příkaz čekání s ID procesu ukončeného procesu. Výstup zobrazí ID procesu ukončeného procesu.

#!/ bin / bash
echo "Testovací příkaz čekání"
spát 20 a
pid = $!
zabít $ pid
počkejte $ pid
echo $ pid bylo ukončeno.

Výstup:

$ bash počkat2.sh

Příklad 3: Zkontrolujte hodnotu stavu ukončení

V následujícím skriptu funkce šek() je volána dvěma hodnotami argumentů. Na začátku tutoriálu je diskutováno, že pokud je příkaz čekání úspěšně proveden, hodnota ukončení bude 0 a pokud příkaz čekání zjistí jakoukoli chybu, vrátí jakoukoli hodnotu mezi 1 a 126. Po spuštění skriptu, pokud předáte 0 jako druhou hodnotu argumentu, pak čekat příkaz se úspěšně ukončí a pokud předáte jakoukoli hodnotu větší než nula, ukončí se neúspěšně.

#!/ bin / bash
kontrola funkce ()

ozvěna "Spánek na 1 $"
spát $ 1
opustit $ 2

zkontrolujte $ 1 $ 2 &
b = $!
echo "Kontrola stavu"
počkejte $ b && echo OK || ozvěna NENÍ v pořádku

Výstup:

$ bash počkat3.sh 3 0
$ bash počkat3.sh 3 5

Doufám, že tento výukový program pomůže správně se naučit příkaz use wait. V Linuxu existuje další příkaz s názvem spát čekat na určitý počet opakování, ale mezi těmito příkazy existují určité rozdíly. Pokud vás zajímá informace o příkazu spánku, můžete navštívit tento odkaz.

Ovládejte a spravujte pohyb myši mezi více monitory ve Windows 10
Správce myší se dvěma displeji umožňuje ovládat a konfigurovat pohyb myši mezi více monitory zpomalením jeho pohybů poblíž hranice. Windows 10/8 vám u...
WinMouse vám umožňuje přizpůsobit a vylepšit pohyb ukazatele myši na PC s Windows
Chcete-li vylepšit výchozí funkce ukazatele myši, použijte freeware WinMouse. Přidává další funkce, které vám pomohou vytěžit ze své skromné ​​myši ma...
V systému Windows 10 nefunguje levé tlačítko myši
Pokud používáte speciální myš s notebookem nebo stolním počítačem, ale levé tlačítko myši nefunguje ve Windows 10/8/7 z nějakého důvodu uvádíme několi...