Android

Cum să folosiți comanda linux sleep pentru a întrerupe un script bash

? Cum sa faci un Script in Linux folosind Bash | Invata Linux Ep. 34

? Cum sa faci un Script in Linux folosind Bash | Invata Linux Ep. 34

Cuprins:

Anonim

Sleep este un utilitar al liniei de comandă care vă permite să suspendați procesul de apelare pentru o perioadă specificată. Cu alte cuvinte, comanda de repaus întrerupe execuția pe următoarea comandă pentru un anumit număr de secunde.

Comanda de repaus este utilă în special atunci când este utilizată într-un script bash shell, de exemplu atunci când reîncercați o operație eșuată sau în interiorul unei bucle.

În acest tutorial, vă vom arăta cum să utilizați comanda de repaus Linux.

Cum se utilizează comanda de somn

Sintaxa pentru comanda de repaus este următoarea:

sleep NUMBER…

NUMBER poate fi un număr întreg pozitiv sau un număr în virgulă mobilă.

SUFFIX poate fi unul dintre următoarele:

  • s - secunde (implicit) m - minute h - ore d - zile

Când nu se folosește un sufix, acesta este implicit în secunde.

Când sunt specificate două sau mai multe argumente, timpul total este echivalent cu suma valorilor lor.

Iată câteva exemple simple care demonstrează modul de utilizare a comenzii de repaus:

  • Dormiți 5 secunde:

    sleep 5

    Dormiți 0, 5 secunde:

    sleep 0.5

    Dormiți timp de 2 minute și 30 de secunde:

    sleep 2m 30s

Exemple de script Bash

Mai jos este exemplul cel mai de bază despre cum să utilizați comanda de repaus în scripturile dvs. Bash. Când rulați scriptul, acesta va imprima ora curentă în format HH:MM:SS . Apoi comanda de repaus va întrerupe scenariul timp de 5 secunde. Când trece perioada de timp specificată, ultima linie a scriptului va imprima din nou ora curentă.

#!/bin/bash # start time date +"%H:%M:%S" # sleep for 5 seconds sleep 5 # end time date +"%H:%M:%S"

Rezultatul va arăta astfel:

13:34:40 13:34:45

Să aruncăm o privire la un exemplu mai avansat.

#!/bin/bash while: do if ping -c 1 ip_address &> /dev/null then echo "Host is online" break fi sleep 5 done

Scriptul de mai sus va verifica dacă o gazdă este online sau nu la fiecare 5 secunde și când gazda va intra online, scriptul vă va anunța și va opri.

Cum funcționează scriptul:

  • În prima linie, creăm un infinit în buclă. Atunci folosim comanda ping pentru a determina dacă gazda cu adresa IP a ip_address este accesibilă sau nu. Dacă gazda este accesibilă, scriptul va răsuna „Gazda este online” și terminați bucla. Dacă gazda nu este accesibilă, comanda de repaus întrerupe scriptul timp de 5 secunde, iar bucla începe de la început.

Concluzie

Până acum, ar trebui să înțelegeți cum să utilizați comanda de repaus Linux.

Comanda de repaus este una dintre cele mai simple comenzi shell, acceptând un singur argument care este utilizat pentru a specifica intervalul de somn.

terminal de somn