Selles õpetuses uurime Linuxis Bash Wait käsku.
Süntaks:
Käsu Wait üldine süntaks Linuxis on järgmine:
oota [valik] ID
ID oleks protsessi ID või töö ID.
Bash Wait käsu selgitamine Linuxis:
Esiteks looge fail puutekäsuga:
$puudutadaBashWait.sh
Tehke see fail käivitatavaks, kasutades järgmist käsku:
$chmod+x failinimi
Kui failile on antud täitmisõigused, avage fail ja kirjutage skript bash -faili:
#!/bin/bashmagama 3 &
processID=$!
viskas välja „PID:$ processID'
oota $ processID
viskas välja 'Väljumise olek: $?'
$! on muutuja BASH -is, mis salvestab viimase protsessi PID -i.
Nüüd käivitage skript järgmiselt:
$./faili nimi$./BashWait.sh
Kestas kuvatakse protsessi ID ja olek.
Valiku –n kasutamine:
Valiku –n korral ootab käsk ootama ainult ühe töö lõpetamist määratud protsessi ID -st või töö spetsifikatsioonidest enne väljumise oleku tagastamist. Oota -n ootab mis tahes taustatöö lõpetamist ja tagastab töö lõpetamise oleku, kui argumente ei esitata.
Kirjutage oma skripti allpool toodud read:
#!/bin/bashmagama 30 &
magama 8 &
magama 7 &
oota -n
viskas välja 'Esimene töö on lõpetatud.'
oota
viskas välja 'Kõik tööd on lõpetatud.'
Järgmisena käivitage skript uuesti ja kui esimene töö on lõpetatud, prindib see sõnumi terminalile ja ootab kõigi muude tööde lõpetamist.
Kasutades valikut -f:
Valik -f ootab iga protsessi ID või töö peatumist enne väljumiskoodi tagastamist. Töö juhtimine on vaikimisi saadaval ainult reageerivatele viipadele.
Avage terminal ja käivitage käsk:
Oodake protsessi 3944.
Avage teine terminaliaken ja täitke protsessi lõpetamiseks käsk tappa.
Staatust muudetakse. Käsk Oota lõpetab ja tagastab protsessi väljumiskoodi.
Korrake ülaltoodud samme käsuga –f.
Skript käsuga Oota:
Me kasutame demonstreerimiseks skripte 'hello.sh' ja 'bash.sh'. Skript 'hello.sh' prindib numbrid 1 kuni 5 ja skript 'bash.sh' helistab hello.sh ja käivitab selle taustal, omades hello.sh PID -d ja oodates selle lõppu.
Looge kaks skripti nimega tere ja bash:
Lisage failile hello.sh allpool toodud read:
#!/bin/basheestisisse 1 2 3 4 5 6 7 8 9 10
teha
viskas väljatere.sh - silmuse number$ i.
tehtud
Lisage bash-skripti allpool toodud read:
#!/bin/bashviskas väljaAlustas bash.sh
viskas väljaAlustas tere.sh
./tere.sh&
protsessi_id=$!
oota $ process_id
viskas väljaValmis tere.sh
Väljund:
Järeldus:
Kui kasutaja soovib protsessi peatada, vabastab süsteem kõik protsessi säilitatud ressursid ja ootab uue käivitamist. Peame protsessile teatama, et see võib käivitada uuesti, kui muud protsessid on lõpule viidud. Ootekäsk bashis ootab täitmise lõpuleviimist ja tagastab väljumise oleku, kui protsessi täitmine on lõpetatud. Selles juhendis oleme näinud mõningaid näiteid käsust Bash wait Linuxis.