Paano Gamitin Ang Linux "sleep" Command Upang I-pause ang Isang BASH Script

Ipinapakita ng gabay na ito kung paano gamitin ang utos ng pagtulog ng Linux upang i-pause ang isang script ng bash.

Sa sarili nitong, ang utos sa pagtulog ay ganap na walang silbi maliban kung gusto mong i-lock ang iyong terminal window ngunit bilang bahagi ng isang script na magagamit nito sa maraming iba't ibang paraan kasama bilang isang kadahilanan ng pause bago muling susundin ang isang command.

Halimbawa, isipin na mayroon kang isang script na nagpoproseso ng mga file na kinopya mula sa isa pang server. Ang script ay hindi dapat magsimula ng proseso ng kopya hanggang sa ang lahat ng mga file ay tapos na mag-download.

Ang proseso ng pag- download ay isinagawa ng isang ganap na hiwalay na script.

Ang script para sa pagkopya ng mga file ay maaaring maglaman ng isang loop upang masubukan kung ang lahat ng mga file ay na-download (ibig sabihin, alam na dapat mayroong 50 na mga file at kapag natagpuan ang 50 na mga file ang proseso ng kopya ay nagsimula).

Walang point ang script na patuloy na sinusubukan habang tumatagal ng oras ng processor. Sa halip, maaari mong piliin na subukan kung may sapat na mga file na kinopya at kung hindi huminto sa loob ng ilang minuto at pagkatapos ay subukan muli. Ang utos ng pagtulog ay perpekto sa mga sitwasyong ito.

Paano Gamitin Ang Sleep Command

Upang gamitin ang Linux sleep command, ilagay ang sumusunod sa terminal window:

matulog 5s

Ang utos sa itaas ay gumawa ng iyong terminal ng pause para sa 5 segundo bago ka bumalik sa command line.

Ang utos sa pagtulog ay nangangailangan ng pagkatulog ng keyword na sinusundan ng bilang na nais mong i-pause at pagkatapos ay ang yunit ng panukalang-batas.

Maaari mong tukuyin ang pagkaantala sa mga segundo, minuto, oras o araw.

Pagdating sa naghihintay na mga araw para sa isang bagay na mangyayari maaaring nagkakahalaga ng isasaalang-alang ang paggamit ng isang trabaho sa cron upang patakbuhin ang script sa mga regular na agwat kumpara sa pagkakaroon ng script na tumatakbo sa background para sa mga araw sa pagtatapos.

Ang numero para sa command ng pagtulog ay hindi kailangang maging isang buong numero.

Maaari mo ring gamitin ang mga numero ng lumulutang na tuldok.

Halimbawa, perpektong ok na gamitin ang sumusunod na syntax:

matulog 3.5s

Isang Halimbawa Gamitin Para sa Sleep Command

Ipinapakita ng sumusunod na script kung paano gamitin ang command ng pagtulog upang makagawa ng isang terminal batay sa countdown na orasan:

#! / bin / bash

x = 10

habang [$ x -gt 0]

gawin

matulog 1s

malinaw

echo "$ x seconds hanggang sabog"

x = $ (($ x - 1))

tapos na

Ang script ay nagtatakda ng variable x hanggang 10. Ang habang loop ay patuloy na ulitin habang ang halaga ng x ay mas malaki kaysa sa zero.

Ang utos ng tulog ay nag-i-pause ang script para sa 1 segundo bawat oras sa paligid ng loop.

Ang natitirang bahagi ng script ay nililimas ang screen bawat pag-ulit, ipinapakita ang mensahe na "x seconds hanggang sabog" (ie 10) at pagkatapos ay binabawasan ang 1 mula sa halaga ng x.

Kung wala ang utos sa pagtulog, ang script ay mag-zoom sa pamamagitan ng at ang mga mensahe ay ipapakita masyadong mabilis.

Ang utos ng pagtulog ay may ilang mga switch.

Ipinapakita ng switch ng --help ang tulong na file para sa command na pagtulog. Maaari mong makamit ang parehong bagay sa pamamagitan ng paggamit ng utos ng tao tulad ng sumusunod:

matulog ang tao

Ang command na -version ay nagpapakita ng bersyon ng command na pagtulog na naka-install sa iyong system.

Ang impormasyon na ibinalik ng switch ng paglipat ay ang mga sumusunod: