17/11/2024

BashCommandes et Système

Marquer un temps d’arrêt en bash avec SLEEP

I. Présentation

Dans ce tutoriel, nous allons apprendre à marquer un temps d'arrêt dans un script bash. Ce peut être une pratique utile dans beaucoup de cas différents. On peut par exemple lancer une commande de lancement d'une machine virtuelle puis vouloir faire une vérification afin de voir si celle-ci est bien démarré. On voudra alors marquer une temps d'arrêt entre le lancement et la vérification pour attendre que la VM ai bien démarré. Ce cas est un exemple parmis beaucoup d'autres.

II. La commande "sleep"

Nous allons pour le tutoriel utiliser "sleep" de manière très simple comme suivant dans un script bash appelé "script.bash" :

#!/bin/bash
date
echo "étape 1 :" ;
sleep 10
date
echo "étape 2 : " ;

Nous rendons ensuite exécutable notre script :

chmod +x script.sh

Puis nous l'exécutons :

./script.sh

Voila la sortie que nous en aurons :

BashSleep01

On voit donc bien que le "10" correspond à une attente de 10 secondes. Essayons maintenant avec les minutes. On modifie donc légèrement notre script comme suivant :

#!/bin/bash
date
echo "étape 1 :";
sleep 1m
date
echo "étape2 :" ;

Nous aurons cette sortie :

BashSleep02

On voit donc bien que par défaut, l'unité prise en compte est la seconde. Si nous voulons passer en minute il faut ajouter un "m" à la fin de l'unité de "sleep". De même pour les heures ("h") ou encore pour les jours ("d").

author avatar
Mickael Dorigny Co-founder
Co-fondateur d'IT-Connect.fr. Auditeur/Pentester chez Orange Cyberdéfense.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.