Android

Comment utiliser la commande linux sleep pour suspendre un script bash

how to turn on / off your wifi network card in the Ubuntu terminal

how to turn on / off your wifi network card in the Ubuntu terminal

Table des matières:

Anonim

Sleep est un utilitaire de ligne de commande qui vous permet de suspendre le processus d'appel pendant une durée spécifiée. En d'autres termes, la commande sleep suspend l'exécution de la commande suivante pendant un nombre de secondes donné.

La commande sleep est particulièrement utile lorsqu'elle est utilisée dans un script shell bash, par exemple lors d'une nouvelle tentative d'une opération ayant échoué ou dans une boucle.

Dans ce tutoriel, nous allons vous montrer comment utiliser la commande Linux sleep.

Comment utiliser la commande sleep

La syntaxe de la commande sleep est la suivante:

sleep NUMBER…

Le NUMBER peut être un entier positif ou un nombre à virgule flottante.

Le SUFFIX peut être l'un des suivants:

  • s - secondes (par défaut) m - minutes h - heures d - jours

Quand aucun suffixe n'est utilisé, il est par défaut en secondes.

Lorsque deux arguments ou plus sont spécifiés, la durée totale équivaut à la somme de leurs valeurs.

Voici quelques exemples simples montrant comment utiliser la commande sleep:

  • Dormez pendant 5 secondes:

    sleep 5

    Dormez pendant 0, 5 seconde:

    sleep 0.5

    Dormez 2 minutes et 30 secondes:

    sleep 2m 30s

Exemples de scripts Bash

Vous trouverez ci-dessous l'exemple le plus simple de l'utilisation de la commande sleep dans vos scripts Bash. Lorsque vous exécutez le script, il imprime l'heure actuelle au format HH:MM:SS . Ensuite, la commande sleep suspend le script pendant 5 secondes. Lorsque la période spécifiée s'est écoulée, la dernière ligne du script imprime à nouveau l'heure actuelle.

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

La sortie ressemblera à ceci:

13:34:40 13:34:45

Jetons un coup d'œil à un exemple plus avancé.

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

Le script ci-dessus vérifiera si un hôte est en ligne ou non toutes les 5 secondes et lorsque l'hôte se connecte, le script vous en informe et s'arrête.

Comment fonctionne le script:

  • Dans la première ligne, nous créons une boucle while infinie. Ensuite, nous utilisons la commande ping pour déterminer si l'hôte avec l'adresse IP de ip_address est accessible ou non. Si l'hôte est accessible, le script fera écho "L'hôte est en ligne" et terminer la boucle.Si l'hôte n'est pas accessible, la commande sleep met le script en pause pendant 5 secondes, puis la boucle recommence depuis le début.

Conclusion

À présent, vous devriez avoir une bonne compréhension de l'utilisation de la commande Linux sleep.

La commande sleep est l'une des commandes shell les plus simples, acceptant un seul argument qui est utilisé pour spécifier l'intervalle de sommeil.

terminal de sommeil