Syntaks for søvnkommando:
sove nummer [suffiks]
Du kan bruge ethvert heltal eller brøktal som tidsværdi. Suffix-delen er valgfri til denne kommando. Hvis du udelader suffikset, beregnes tidsværdien som sekunder som standard. Du kan bruge s, m, h og d som suffiksværdi. De følgende eksempler viser brugen af søvnkommando med forskellige suffikser.
Eksempel 1: søvnkommando uden noget suffiks
I det følgende script bruges sleep-kommando med numerisk værdi 2 kun og intet suffiks bruges. Så hvis du kører scriptet, så er strengen “Opgave afsluttet”Udskrives efter at have ventet i 2 sekunder.
#!/ bin / bashekko "Venter i 2 sekunder ..."
sove 2
ekko "Opgave afsluttet"
Kør bash-filen med tid kommando til at vise de tre typer tidsværdier til kørsel af scriptet. Outputtet viser den tid, et system bruger, bruger og realtid.
$ time bash sleep1.shProduktion:
Eksempel 2: søvnkommando med minutsuffiks
I det følgende script, 'm'bruges som suffiks med søvnkommando. Her er tidsværdien 0.05 minutter. Efter at have ventet på 0.05 minutter, “Opgave afsluttet”Meddelelse udskrives.
#!/ bin / bashekko "Venter på 0.05 minutter ... "
sove 0.05m
ekko "Opgave afsluttet"
Kør scriptet med tid kommando som det første eksempel.
$ time bash sleep2.shProduktion:
Eksempel 3: søvnkommando med timesuffiks
I det følgende script, 'h'bruges som suffiks med søvnkommando. Her er tidsværdien 0.003 timer. Efter at have ventet 0.003 timer “Opgave afsluttet”Skal udskrives på skærmen, men det kræver flere gange i virkeligheden, hvornår 'h' suffiks bruges.
#!/ bin / bashekko "Venter på 0.003 timer ... "
sove 0.003h
ekko "Opgave afsluttet"
$ time bash sleep3.sh
Produktion:
Eksempel 4: søvnkommando med sløjfe
Du kan bruge søvnkommando til forskellige formål. I det følgende eksempel bruges sleep-kommando med while loop. Oprindeligt værdien af variablen n er sat til 1 og værdien af n vil blive forøget af 1 til 4 gange i hver 2 interval. Så hvornår kører du scriptet, vises hver output efter at have ventet i 2 sekunder.
#!/ bin / bashn = 1
mens [$ n -lt 5]
gør
ekko "Værdien af n er nu $ n"
sove 2s
ekko " "
((n = $ n + 1))
Færdig
Produktion:
Eksempel 5: søvnkommando i terminalen med andre kommandoer
Antag, at du vil køre flere kommandoer og indstille det faste tidsinterval mellem output fra to kommandoer, så kan du bruge sleep-kommando til at udføre den opgave. I dette eksempel kommandoen ls og pwd er med søvn kommando. Efter udførelse af kommandoen, ls kommandoen viser kataloglisten over den aktuelle mappe og viser den aktuelle arbejdsmappe, når de har ventet i 2 sekunder.
$ ls && sove 2 && pwdProduktion:
Eksempel 6: Brug af søvnkommando fra kommandoprompten
sleep-kommando bruges mellem to ekkokommandoer i følgende eksempel. Tre tidsværdier vises efter udførelse af kommandoen.
$ tid (ekko "Start"; sove 5; ekko "Afslut")Produktion:
sleep-kommando er en nyttig kommando, når du skal skrive et bash-script med flere kommandoer eller opgaver, output fra enhver kommando kan kræve lang tid, og anden kommando skal vente på at udføre opgaven med den forrige kommando. For eksempel vil du downloade sekventielle filer, og næste download kan ikke startes, før den tidligere download er gennemført. I dette tilfælde er det bedre at sove kommandoen før hver download for at vente på den faste tid.