Sintaksa naredbe mirovanja:
broj spavanja [sufiks]
Kao vrijednost vremena možete upotrijebiti bilo koji cijeli broj ili razlomak. Sufiksni dio nije obvezan za ovu naredbu. Ako izostavite sufiks, tada se zadana vrijednost vremena izračunava u sekundama. Možeš koristiti s, m, h i d kao sufiksna vrijednost. Sljedeći primjeri pokazuju upotrebu naredbe za spavanje s različitim sufiksima.
Primjer-1: naredba za spavanje bez ikakvog sufiksa
U sljedećoj se skripti koristi naredba mirovanja s numeričkom vrijednošću 2 samo i ne koristi se sufiks. Dakle, ako pokrenete skriptu, tada se niz "Zadatak izvršen”Ispisat će se nakon čekanja od 2 sekunde.
#!/ bin / bashodjek "Čekanje 2 sekunde ..."
spavati 2
odjek "Zadatak izvršen"
Pokrenite bash datoteku s vrijeme naredba za prikaz tri vrste vremenskih vrijednosti za pokretanje skripte. Izlaz prikazuje vrijeme koje koristi sustav, korisnik i stvarno vrijeme.
$ vrijeme bash sleep1.shIzlaz:
Primjer-2: naredba za spavanje s minutnim sufiksom
U sljedećoj skripti, 'm'koristi se kao sufiks naredbe za spavanje. Ovdje je vrijednost vremena 0.05 minuta. Nakon čekanja 0.05 minuta, "Zadatak izvršen”Poruka će se ispisati.
#!/ bin / bashecho "Čeka se 0.05 minuta ... "
spavati 0.05m
odjek "Zadatak izvršen"
Pokrenite skriptu sa vrijeme naredba poput prvog primjera.
$ vrijeme bash sleep2.shIzlaz:
Primjer-3: naredba za spavanje sa sufiksom sata
U sljedećoj skripti, 'h'koristi se kao sufiks naredbe za spavanje. Ovdje je vrijednost vremena 0.003 sata. Nakon čekanja 0.003 sata “Zadatak izvršen”Treba ispisati na ekranu, ali u stvarnosti treba više puta kada 'h' koristi se sufiks.
#!/ bin / bashecho "Čeka se 0.003 sata ... "
spavati 0.003h
odjek "Zadatak izvršen"
$ vrijeme bash sleep3.sh
Izlaz:
Primjer-4: naredba za spavanje s petljom
Naredbu za spavanje možete koristiti u razne svrhe. U sljedećem primjeru naredba za spavanje koristi se s petljom while. U početku vrijednost varijable n je postavljeno na 1, a vrijednost n bit će uvećan za 1 za 4 puta u svakom 2 interval sekundi. Dakle, kada ćete pokrenuti skriptu, svaki će se izlaz pojaviti nakon čekanja 2 sekunde.
#!/ bin / bashn = 1
dok [$ n -lt 5]
čini
echo "Vrijednost n sada je $ n"
spavati 2s
jeka " "
((n = $ n + 1))
gotovo
Izlaz:
Primjer-5: naredba za spavanje u terminalu s ostalim naredbama
Pretpostavimo da želite pokrenuti više naredbi i postaviti fiksni vremenski interval između izlaza dviju naredbi, a zatim možete upotrijebiti naredbu spavanja za taj zadatak. U ovom primjeru naredba ls i pwd su sa spavati naredba. Nakon izvršavanja naredbe, ls naredba će prikazati popis direktorija trenutnog direktorija i trenutnu putanju radnog direktorija nakon čekanja od 2 sekunde.
$ ls && spavaj 2 && pwdIzlaz:
Primjer 6: Korištenje naredbe mirovanja iz naredbenog retka
naredba za spavanje koristi se između dvije eho naredbe u sljedećem primjeru. Nakon izvršavanja naredbe prikazat će se tri vremenske vrijednosti.
$ vrijeme (odjek "Start"; mirovanje 5; odjek "Kraj")Izlaz:
naredba sleep korisna je naredba kada trebate napisati bash skriptu s više naredbi ili zadataka, za izlaz bilo koje naredbe može biti potrebno puno vremena, a za naredbu je potrebno pričekati da se izvrši zadatak prethodne naredbe. Na primjer, želite preuzeti sekvencijalne datoteke, a sljedeće preuzimanje ne može se započeti prije dovršetka prethodnog preuzimanja. U ovom je slučaju prije svakog preuzimanja bolje narediti uspavanje da biste pričekali određeno vrijeme.