Kaip naudotis "Linux" "miego" komanda, kad sustabdytumėte BASH scenarijų

Šiame vadove parodyta, kaip naudoti Linux miego komandą, kad pristabdytumėte bash scenarijų.

Savo ruožtu miego komanda yra visiškai nenaudinga, jei nenorite užrakinti savo terminalo lango, bet kaip scenarijaus dalį ji gali būti naudojama įvairiais būdais, taip pat kaip pauzės faktorius prieš bandant pakartoti komandą.

Pavyzdžiui, įsivaizduokite, kad turite scenarijų, kuris apdorojo failus, nukopijuotus iš kito serverio. Šis scenarijus neturėtų pradėti kopijavimo proceso, kol visi failai nebus atsisiųsti.

Atsisiuntimo procesas atliekamas visiškai atskirame scenarijuje.

Failų kopijavimo scenarijus gali turėti kilpą, kad būtų galima patikrinti, ar visi failai buvo atsiųsti (ty jis žino, kad turėtų būti 50 failų ir kai buvo rasta 50 rinkmenų kopijavimo procesas).

Nėra jokio tikslo, kad scenarijus būtų nuolat išbandomas, nes jis užima procesoriaus laiką. Vietoje to galite pasirinkti patikrinti, ar kopijuojami pakankamai failų, ir jei kelios minutės nėra pristabdytos, tada bandykite dar kartą. Šiomis aplinkybėmis miego komanda yra tobula.

Kaip naudotis miego komanda

Jei norite naudoti Linux miego komandą, į terminalo langą įveskite:

miegoti 5s

Viršuje esanti komanda padarys jūsų terminalą pertrauką 5 sekundes prieš grąžinant į komandų eilutę.

Miego komandai reikia raktinio žodžio miego, po kurio nurodomas numeris, kurį norite pristabdyti, o tada matavimo vienetas.

Galite nurodyti delsą sekundėmis, minutėmis, valandomis ar dienomis.

Kalbant apie laukimo laiką, kad kažkas atsitiktų, gali būti verta apsvarstyti galimybę naudoti cron'o darbą reguliariai paleisti scenarijų, o ne scenarijų paleidimo fone dienų pabaigoje.

Miego komandos numeris neturi būti sveikas skaičius.

Taip pat galite naudoti slankiojo kablelio numerius.

Pavyzdžiui, puikiai tinka naudoti šią sintaksę:

miegoti 3,5 sek

Pavyzdys naudojamas miego komandai

Šiame scenarijuje parodyta, kaip naudoti miego komandą, kad galėtumėte sukurti terminalo atskaitos laikrodį:

#! / bin / bash

x = 10

o [$ x -gt 0]

daryk

miegas 1s

aišku

echo "$ x sekundes, kol išblokuosite"

x = $ (($ x - 1))

padaryta

Skriptas nustato kintamąjį x 10. Laiko ciklas tęsiasi, o x vertė yra didesnė už nulį.

Miego komanda pristabdo scenarijų 1 sekundę kiekvieną kartą aplink kilpą.

Likęs scenarijus išvalo kiekvieno kartotinio ekrano tekstą, parodo pranešimą "x sekundes iki išblukimo" (ty 10) ir tada atimamas 1 iš x reikšmės.

Be miego komandos, scenarijus padidėtų, o pranešimai būtų rodomi per greitai.

Miego komandoje yra tik keletas jungiklių.

"-help" jungiklis rodo pagalbinę failą miego komandai. Jūs galite pasiekti tą patį, naudodami komandą "vyras" taip:

vyras miega

"--version" komanda parodo jūsų sistemoje įdiegtą miego komandų versiją.

"--version" jungiklio grąžinta informacija yra tokia: