sleep est un utilitaire de ligne de commande qui vous permet de suspendre le processus appelant pendant une durée spécifiée. En d'autres termes, le sleep commande interrompt l'exécution de la commande suivante pendant un nombre de secondes donné.
Le sleep La commande est utile lorsqu'elle est utilisée dans un script shell bash, par exemple, lors d'une nouvelle tentative d'opération ayant échoué ou à l'intérieur d'une boucle.
Dans ce tutoriel, nous allons vous montrer comment utiliser le Linux sleep commande.
Comment utiliser le sleep Commande #
La syntaxe pour le sleep commande est la suivante :
sleep NUMBER[SUFFIX]...
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- minutesh- heuresd- jours
Lorsqu'aucun suffixe n'est spécifié, la valeur par défaut est secondes.
Lorsque deux arguments ou plus sont donnés, le temps total équivaut à la somme de leurs valeurs.
Voici quelques exemples simples montrant comment utiliser le sleep commande :
-
Veille pendant 5 secondes :
sleep 5 -
Veille pendant 0,5 seconde :
sleep 0.5 -
Dormez pendant 2 minutes et 30 secondes :
sleep 2m 30s
Exemples de scripts bash #
Dans cette section, nous allons passer en revue quelques scripts shell de base pour voir comment le sleep commande est utilisée.
#!/bin/bash
# start time
date +"%H:%M:%S"
# sleep for 5 seconds
sleep 5
# end time
date +"%H:%M:%S"
Lorsque vous exécutez le script, il imprimera l'heure actuelle en HH:MM:SS format. Puis le sleep La commande interrompt le script pendant 5 secondes. Une fois la période de temps spécifiée écoulée, la dernière ligne du script imprime l'heure actuelle.
La sortie ressemblera à ceci :
13:34:40
13:34:45
Examinons 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 vérifie si un hôte est en ligne ou non toutes les 5 secondes. Lorsque l'hôte se connecte, le script vous avertit et s'arrête.
Comment fonctionne le script :
- Dans la première ligne, nous créons un
whileinfini boucle. - Ensuite, nous utilisons le
pingcommandpour déterminer si l'hôte avec l'adresse IP deip_addressest joignable ou non. - Si l'hôte est joignable, le script affichera "L'hôte est en ligne" et terminera la boucle.
- Si l'hôte n'est pas joignable, le
sleepLa commande met le script en pause pendant 5 secondes, puis la boucle recommence depuis le début.
Conclusion #
Le sleep La commande est l'une des commandes Linux les plus simples. Il est utilisé pour suspendre l'exécution de la commande suivante pendant un temps donné.
Si vous avez des questions ou des commentaires, n'hésitez pas à laisser un commentaire.