Šajā apmācībā mēs izpētīsim komandu Bash Wait Linux.
Sintakse:
Wait komandas vispārējā sintakse Linux ir šāda:
pagaidiet [opcija] ID
ID būtu procesa ID vai darba ID.
Bash Wait komandas izskaidrošana Linux:
Vispirms izveidojiet failu, izmantojot komandu touch:
$ pieskarieties BashWait.sh
Padariet šo failu izpildāmu, izmantojot šādu komandu:
$ chmod + x faila nosaukums
Kad failam ir piešķirtas izpildāmās privilēģijas, atveriet failu un ierakstiet skriptu bash failā:
#!/ bin / bashgulēt 3 un
processID = $!
atbalss "PID: $ processID"
pagaidiet $ processID
atbalss "Izejas statuss: $?"
$! ir mainīgais BASH, kas glabā jaunākā procesa PID.
Tagad palaidiet skriptu šādi:
$ ./faila nosaukums$ ./ BashWait.sh
Procesā ID un statuss Exist parādīsies čaulā.
Izmantojot opciju -n:
Izmantojot opciju -n, gaidīšanas komanda gaida tikai viena darba pabeigšanu no norādītā procesa ID vai darba specifikācijām, pirms atgriežas tā izejas statuss. Pagaidiet -n gaida jebkura fona darba pabeigšanu un atgriež darba izejas statusu, ja netiek sniegti argumenti.
Skriptā ierakstiet zemāk norādītās rindas:
#!/ bin / bashgulēt 30 un
gulēt 8 un
gulēt 7 un
pagaidi -n
atbalss "Pirmais darbs ir pabeigts."
pagaidi
atbalss "Visi darbi ir pabeigti."
Pēc tam vēlreiz palaidiet skriptu un, kad pirmais darbs būs pabeigts, tas drukās ziņojumu terminālā un gaidīs, kamēr tiks pabeigti visi citi darbi.
Izmantojot opciju -f:
Opcija -f gaida katra procesa ID vai darba apstāšanos, pirms atgriež izejas kodu. Darba kontrole pēc noklusējuma ir pieejama tikai atsaucīgiem uzvednēm.
Atveriet termināli un palaidiet komandu:
Gaidiet procesu 3944.
Atveriet citu termināļa logu un izpildiet komandu kill, lai izbeigtu procesu.
Statuss tiks mainīts. Gaidīšanas komanda pabeigs un atgriezīs procesa izejas kodu.
Atkārtojiet iepriekš norādītās darbības ar komandu -f.
Skripts ar komandu Pagaidiet:
Mēs izmantojam sveicienu.sh 'un' bash.sh skripti demonstrācijai. Sveiks.sh 'skripts izdrukā skaitļus no 1 līdz 5 un' bash.sh 'skripts aicina sveiki.sh un palaiž to fonā ar sveiciena PID.sh un gaida, kad tas beigsies.
Izveidojiet divus skriptus ar vārdu hello un bash:
Sveiki pievienojiet zemāk norādītās rindas.sh fails:
#!/ bin / bashpar i in 1 2 3 4 5 6 7 8 9 10
darīt
atbalss “sveiki.sh - cilpas numurs $ i.”
izdarīts
Pievienojiet zemāk norādītās rindas bash skriptā:
#!/ bin / bashatbalss “Started bash.sh ”
atbalss “Sāc sveiki.sh ”
./Sveiki.sh &
process_id = $!
pagaidiet $ process_id
atbalss “Pabeigts sveiks.sh
Izeja:
Secinājums:
Kad lietotājs vēlas apturēt procesu, sistēma atbrīvo visus procesa paturētos resursus un gaida, līdz sāksies cits. Mums būs jāpaziņo procesam, ka tas var atsākt izpildi, tiklīdz citi procesi būs pabeigti. Gaidīšanas komanda bashā gaida izpildes pabeigšanu un atgriež izejas statusu, kad procesa izpilde ir pabeigta. Šajā rokasgrāmatā mēs esam redzējuši dažus Bash wait komandas Linux piemērus.