Ovaj vodič pokazuje kako koristiti naredbu za Linux sleep kako biste pauzirali bash skriptu.
Samostalno, naredba za spavanje potpuno je beskorisna, osim ako vam se ne sviđa zaključavanje prozora terminala, ali kao dio skripte može se koristiti na mnogo različitih načina, uključujući i faktor pauze prije ponovnog pokušaja naredbe.
Na primjer, zamislite da ste imali skriptu koja je obrađivala datoteke kopirane s drugog poslužitelja. Skripta ne bi trebala započeti postupak kopiranja sve dok se sve datoteke ne završi preuzimanjem. Postupak preuzimanja izvodi se potpuno odvojenom skriptom.
Skripta za kopiranje datoteka može sadržavati petlju kako bi testirali jesu li sve datoteke preuzete (tj. Zna da bi trebalo biti 50 datoteka i kad je pronađeno 50 datoteka, započinje postupak kopiranja).
Nema smisla pisanja kontinuirano testirati, jer traje procesor vrijeme. Umjesto toga, možete odabrati da testirate postoji li dovoljno datoteka kopiranih, a ako ih nema, pauzirajte nekoliko minuta, a zatim pokušajte ponovo. Naredba za spavanje je savršena u ovim okolnostima.
Kako koristiti naredbu za spavanje
Da biste koristili Linux naredbu za spavanje, unesite sljedeće u prozor terminala:
spavanje 5s
Gornja naredba učinit će vaš terminal stanku na 5 sekundi prije nego što se vrati u naredbeni redak.
Naredba za spavanje zahtijeva ključnu riječ "spavanje", koju slijedi broj koji želite pauzirati, a zatim jedinicu mjere.
Odgodu možete odrediti u sekundama, minutama, satima ili danima.
- s - sekundi
- m - minuta
- h - sati
- d - dana
Kada je riječ o danima čekanja da se nešto dogodi, možda bi bilo valjano razmisliti o korištenju cronovog posla za pokretanje skripte u redovitim intervalima, za razliku od skriptiranja u pozadini danima na kraju.
Broj za naredbu za spavanje ne mora biti cijeli broj. Također možete koristiti brojeve s pomičnim zarezom.
Na primjer, sasvim je u redu koristiti sljedeću sintaksu:
Primjer Primjena za naredbu za spavanje
Sljedeća skripta pokazuje kako koristiti naredbu za spavanje za izradu vremenskog odbrojavanja na temelju terminala:
#! / Bin / bashx = 10dok je $ x -gt 0činispavanje 1sčistoecho "$ x sekundi do eksplozije"x = $ (($ x - 1))učinio Skripta postavlja varijablu x do 10. Dok se petlja nastavlja iterirati dok je vrijednost x veća od nule. Naredba za stanje mirovanja zaustavlja skriptu 1 sekundu svaki put oko petlje. Ostatak skripte briše zaslon svake iteracije, prikazuje poruku "x sekundi do eksplozije" (tj. 10), a zatim oduzima vrijednost 1 od vrijednosti x. Bez naredbe za spavanje, skripta bi se povećala i poruke će se prikazati prebrzo. Naredba za spavanje ima samo nekoliko prekidača. Pomoću pomoćne pomoći prikazuje se datoteka pomoći za naredbu za spavanje. Istu stvar možete postići pomoću naredbe čovjek kako slijedi: čovjek spava Naredba --version prikazuje verziju naredbe za spavanje koja je instalirana na vašem sustavu. Informacije koje se vraćaju preko --version switch su kako slijedi: Sklopke