I denne opplæringen vil vi utforske Bash Wait Command i Linux.
Syntaks:
Den generelle syntaksen til Wait-kommandoen i Linux er:
vent [alternativ] ID
ID vil være en prosess-ID eller jobb-ID.
Forklare Bash Wait Command i Linux:
Først oppretter du en fil ved hjelp av berøringskommandoen:
$ touch BashWait.sh
Gjør denne filen kjørbar ved å bruke kommandoen nedenfor:
$ chmod + x filnavn
Når de kjørbare rettighetene er gitt til filen, åpner du filen og skriver et skript i bash-filen:
#!/ bin / bashsove 3 og
prosess-ID = $!
ekko "PID: $ processID"
vent $ prosessID
ekko "Utgangsstatus: $?"
$! er en variabel i BASH som lagrer PID for den siste prosessen.
Kjør nå skriptet som følger:
$ ./filnavn$ ./ BashWait.sh
Prosess-ID og eksisterende status vises i skallet.
Bruke alternativet -n:
Med alternativet -n venter ventekommandoen bare på at en enkelt jobb fra den angitte prosess-IDen eller jobbspesifikasjonene skal fullføres før den returnerer sin avslutningsstatus. Vent - n venter på at en hvilken som helst bakgrunnsjobb skal fullføres, og returnerer statusen for avslutning av jobben hvis ingen argumenter er gitt.
Skriv linjene nedenfor i skriptet:
#!/ bin / bashsove 30 og
sove 8 og
sove 7 og
vent -n
ekko "Første jobb er fullført."
vente
ekko "Alle jobber er fullført."
Kjør deretter skriptet igjen, og når den første jobben er fullført, vil den skrive ut meldingen på terminalen og vente på at alle andre jobber skal fullføres.
Bruke alternativet -f:
Alternativet -f venter på at hver prosess-ID eller jobb skal stoppe før du returnerer utgangskoden. Jobbkontroll er bare tilgjengelig for responsive meldinger som standard.
Åpne terminal og kjør kommando:
Vent på prosess 3944.
Åpne et annet terminalvindu og utfør kill-kommandoen for å avslutte prosessen.
Status blir endret. Vent-kommandoen fullfører og returnerer prosessutgangskoden.
Gjenta trinnene ovenfor med kommandoen -f.
Skript med Vent-kommando:
Vi bruker hallo.sh 'og' bash.sh 'manus for demonstrasjon. Hallo.sh 'skript skriver ut tall fra 1 til 5, og' bash.sh 'script kaller hei.sh og kjører den i bakgrunnen, og har PID av hei.sh og venter på at det skal ta slutt.
Lag to skript med navnet hallo og bash:
Legg til linjene nedenfor i hei.sh-fil:
#!/ bin / bashfor i i 1 2 3 4 5 6 7 8 9 10
gjøre
ekko “hei.sh - Sløyfenummer $ i.”
ferdig
Legg til nedenstående linjer i bash-skriptet:
#!/ bin / bashekko “Started bash.sh ”
ekko “Startet hei.sh ”
./Hallo.sh &
prosess_id = $!
vent $ process_id
ekko “Fullført hei.sh
Produksjon:
Konklusjon:
Når en bruker vil stoppe en prosess, frigjør systemet alle ressursene som holdes av prosessen, og venter på at en annen skal starte. Vi må varsle prosessen om at den kan starte kjøringen på nytt når de andre prosessene er fullført. Ventekommandoen i bash venter på å fullføre kjøringen og returnerer avslutningsstatus når prosessutførelsen er fullført. I denne håndboken har vi sett noen eksempler på Bash wait-kommandoen i Linux.