Miego komanda „Linux“

Sleep Command Linux



Miego komanda naudojama tam tikrą laiką atidėti vykdant bet kurį scenarijų. Kai koduotojui reikia pristabdyti bet kurios komandos vykdymą tam tikram tikslui, ši komanda naudojama su konkrečia laiko reikšme. Galite nustatyti vėlavimo sumą sekundės (s), minutės (m), valandos (h) ir dienos (d). Ši pamoka padės jums išmokti naudoti miego komandą naudojant skirtingus „bash“ scenarijus.

Miego komandų sintaksė:

miego numeris [priesaga]







Kaip laiko vertę galite naudoti bet kokį sveiką ar trupmeninį skaičių. Priedo dalis yra neprivaloma šiai komandai. Jei praleisite priesagą, laiko vertė pagal numatytuosius nustatymus apskaičiuojama sekundėmis. Tu gali naudoti s, m, h ir d kaip priesagos reikšmė. Šie pavyzdžiai rodo miego komandos naudojimą su skirtingomis priesagomis.



1 pavyzdys: miego komanda be jokių priesagų

Šiame scenarijuje miego komanda naudojama su skaitine reikšme 2 tik ir jokios priesagos nenaudojamos. Taigi, jei paleisite scenarijų, tada eilutę Užduotis baigta atspausdins palaukęs 2 sekundes.



#!/bin/bash

išmetė „Laukiame 2 sekundes ...“
miegoti 2
išmetė „Užduotis atlikta“

Paleiskite „bash“ failą naudodami laikas komandą, kad būtų parodytos trijų tipų laiko reikšmės scenarijui paleisti. Išvestis rodo sistemos naudojamą laiką, vartotoją ir realų laiką.





$laikas muštimiegoti1.sh

Išėjimas:



2 pavyzdys: miego komanda su minutės priesaga

Kitame scenarijuje „ m „Naudojamas kaip priesaga su miego komanda. Čia laiko vertė yra 0,05 minutės. Palaukę 0,05 min. Užduotis baigta pranešimas bus išspausdintas.

#!/bin/bash

išmetė 'Laukiama 0,05 minučių ...'
miegoti0,05 m
išmetė „Užduotis atlikta“

Paleiskite scenarijų naudodami laikas komandą, kaip ir pirmasis pavyzdys.

$laikas muštimiegas2.sh

Išėjimas:

3 pavyzdys: miego komanda su valandos priesaga

Kitame scenarijuje „ h „Naudojamas kaip priesaga su miego komanda. Čia laiko vertė yra 0,003 valandos. Po laukimo 0,003 val Užduotis baigta turėtų būti atspausdintas ekrane, tačiau iš tikrųjų reikia daugiau kartų „H“ naudojama priesaga.

#!/bin/bash

išmetė „Laukiama 0,003 valandos ...“
miegoti0,003 val
išmetė „Užduotis atlikta“

$laikas muštimiegoti3.sh

Išėjimas:

4 pavyzdys: miego komanda su kilpa

Miego komandą galite naudoti įvairiems tikslams. Šiame pavyzdyje miego komanda naudojama kartu su ciklu. Iš pradžių kintamojo vertė n yra nustatytas į 1 ir reikšmė n bus padidintas 1 dėl 4 kartų per kiekvieną 2 sekundžių intervalas. Taigi, kada paleisite scenarijų, kiekvienas išėjimas pasirodys po 2 sekundžių laukimo.

#!/bin/bash
n=1
tuo tarpu [ $ n -lt 5 ]
daryti
išmetė „N vertė dabar yra$ n'
miegoti2s
išmetė ''
((n=$ n+1))
padaryta

Išėjimas:

5 pavyzdys: miego komanda terminale su kitomis komandomis

Tarkime, norite paleisti kelias komandas ir nustatyti fiksuotą laiko intervalą tarp dviejų komandų išėjimų, tada galite naudoti miego komandą šiai užduočiai atlikti. Šiame pavyzdyje komanda ls ir pwd yra su miegoti komandą. Įvykdęs komandą, ls komanda parodys dabartinio katalogo katalogų sąrašą ir parodys dabartinį darbo katalogo kelią po 2 sekundžių laukimo.

$ls && miegoti 2 && pwd

Išėjimas:

6 pavyzdys: Naudokite miego komandą iš komandinės eilutės

miego komanda yra naudojama tarp dviejų aido komandų šiame pavyzdyje. Įvykdžius komandą bus rodomos trys laiko vertės.

$laikas (išmetė „Pradėti“;miegoti 5;išmetė 'Galas')

Išėjimas:

miego komanda yra naudinga komanda, kai reikia parašyti „bash“ scenarijų su keliomis komandomis ar užduotimis, bet kurios komandos išėjimui gali prireikti daug laiko, o kitai komandai reikia palaukti, kol bus atlikta ankstesnės komandos užduotis. Pvz., Norite atsisiųsti nuoseklius failus, o kito atsisiuntimo negalima pradėti prieš užbaigiant ankstesnį atsisiuntimą. Tokiu atveju prieš kiekvieną atsisiuntimą geriau užmigti, kad palauktumėte nustatytą laiką.