Commande de sommeil dans Linux

Commande de sommeil dans Linux
La commande de sommeil est utilisée pour retarder une durée fixe pendant l'exécution de tout script. Lorsque le codeur doit suspendre l'exécution de n'importe quelle commande à un usage particulier, cette commande est utilisée avec la valeur de temps particulière. Vous pouvez définir le montant de retard par secondes (s), minutes (m), heures (h) et jours (d). Ce tutoriel vous aidera à apprendre l'utilisation de la commande de sommeil en utilisant différents scripts bash.

Syntaxe de commande de sommeil:

numéro de sommeil [suffixe]

Vous pouvez utiliser n'importe quel nombre entier ou fractionnaire comme valeur temporelle. La pièce de suffixe est facultative pour cette commande. Si vous omettez le suffixe, la valeur de temps est calculée en secondes par défaut. Vous pouvez utiliser s, M, H et d Comme la valeur du suffixe. Les exemples suivants montrent l'utilisation de la commande de sommeil avec différents suffixes.

Exemple-1: Commande de sommeil sans aucun suffixe

Dans le script suivant, la commande de sommeil est utilisée avec une valeur numérique 2 seulement et aucun suffixe n'est utilisé. Donc, si vous exécutez le script, la chaîne "Tâche terminée»Imprimera après avoir attendu 2 secondes.

#!/ bac / bash
Echo "En attendant 2 secondes…"
sommeil 2
écho "tâche terminée"

Exécutez le fichier bash avec temps commande pour afficher les trois types de valeurs de temps pour exécuter le script. La sortie montre le temps utilisé par un système, l'utilisateur et le temps réel.

$ Time Bash Sleep1.shot

Sortir:

Exemple-2: Commande de sommeil avec un suffixe minute

Dans le script suivant, 'm'est utilisé comme suffixe avec commande de sommeil. Ici, la valeur de temps est 0.05 minutes. Après avoir attendu 0.05 minutes, "Tâche terminée»Le message sera imprimé.

#!/ bac / bash
Echo "En attendant 0.05 minutes… "
sommeil 0.05m
écho "tâche terminée"

Exécutez le script avec temps commande comme le premier exemple.

$ Time Bash Sleep2.shot

Sortir:

Exemple-3: Commande de sommeil avec suffixe d'heure

Dans le script suivant, 'H'est utilisé comme suffixe avec commande de sommeil. Ici, la valeur de temps est 0.003 heure. Après avoir attendu 0.003 heure "Tâche terminée«Doit être imprimé à l'écran, mais il nécessite plus de fois en réalité 'H' le suffixe est utilisé.

#!/ bac / bash
Echo "En attendant 0.003 heures… "
sommeil 0.003H
écho "tâche terminée"
$ Time Bash Sleep3.shot

Sortir:

Exemple-4: Commande de sommeil avec boucle

Vous pouvez utiliser la commande de sommeil à diverses fins. Dans l'exemple suivant, la commande de sommeil est utilisée avec la boucle. Initialement, la valeur de la variable n est défini sur 1 et la valeur de n sera incrémenté de 1 pour 4 fois dans chaque 2 intervalle de secondes. Alors, quand allez-vous exécuter le script, chaque sortie apparaîtra après avoir attendu 2 secondes.

#!/ bac / bash
n = 1
tandis que [$ n -lt 5]
faire
Echo "La valeur de n est maintenant $ n"
Sleep 2s
écho " "
((n = $ n + 1))
fait

Sortir:

Exemple-5: Commande de sommeil dans le terminal avec d'autres commandes

Supposons que vous souhaitez exécuter plusieurs commandes et définir l'intervalle de temps fixe entre les sorties de deux commandes, alors vous pouvez utiliser la commande Sleep pour effectuer cette tâche. Dans cet exemple, la commande LS et PWD sont avec dormir commande. Après avoir exécuté la commande, LS La commande affichera la liste des répertoires du répertoire actuel et affichera le chemin du répertoire de travail actuel après avoir attendu 2 secondes.

$ ls && sleep 2 && pwd

Sortir:

Exemple-6: Utilisation de la commande Sleep à partir de l'invite de commande

La commande de sommeil est utilisée entre deux commandes d'écho dans l'exemple suivant. Trois valeurs de temps seront affichées après l'exécution de la commande.

$ time (écho "start"; sleep 5; echo "end")

Sortir:

La commande Sleep est une commande utile lorsque vous devez écrire un script bash avec plusieurs commandes ou tâches, la sortie de n'importe quelle commande peut nécessiter une grande quantité de temps et une autre commande doit attendre la tâche de la commande précédente. Par exemple, vous souhaitez télécharger des fichiers séquentiels et le prochain téléchargement ne peut pas être démarré avant de terminer le téléchargement précédent. Dans ce cas, il est préférable de dormir avant chaque téléchargement pour attendre la durée fixe.