Kako koristiti Linux "sleep" naredbu za pauziranje BASH skripte

Ovaj vodič pokazuje kako koristiti naredbu za Linux sleep kako biste pauzirali bash skriptu.

Samostalno, naredba za spavanje potpuno je beskoristan, osim ako vam se ne sviđa zaključavanje terminala, ali kao dio skripte može se koristiti na mnogo različitih načina, uključujući i faktor stanke 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 li da bi trebalo biti 50 datoteka i kad je pronađeno 50 datoteka, započeo je proces kopiranja).

Nema smisla da se skripta kontinuirano testira, budući da zauzimaju vrijeme procesora. Umjesto toga, možete odabrati da testirate postoji li dovoljno datoteka kopiranih i ako ne postoji stanka na 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, a zatim broj koji želite pauzirati, a zatim jedinicu mjere.

Možete odrediti kašnjenje u sekundama, minutama, satima ili danima.

Kada je riječ o danima čekanja da bi se nešto dogodilo, možda bi bilo vrijedno razmisliti o korištenju cron posla za pokretanje skripte u redovitim intervalima, za razliku od toga da skriptu radi 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:

spavanje 3.5s

Primjer upotrebe za naredbu za vrijeme spavanja

Sljedeća skripta pokazuje kako koristiti naredbu za spavanje za izradu vremenskog odbrojavanja na temelju terminala:

#! / Bin / bash

x = 10

dok je [$ x -gt 0]

čini

spavanje 1s

čisto

echo "$ 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: