Comment faire une pause avec un temps spécifique entre deux commandes dans le script?

17

Je veux faire comme suit:

#!/bin/bash
command1
pause 30 seconds
command2
exit

Ce n'est qu'un exemple de script avec une pause de 30 secondes entre l'exécution de la commande 2.

Comment faire ça?

Pandya
la source

Réponses:

26

Vous pouvez l'utiliser dans un terminal:

command1; sleep 30; command2

Dans votre script:

#!/bin/bash
command1
sleep 30
command2
exit

Suffixe pour le temps de sommeil:

  • s pendant quelques secondes (par défaut)
  • m pendant quelques minutes
  • h Pendant des heures
  • d pendant des jours
TuKsn
la source
4

Vous pouvez utiliser read -t. Par exemple:

read -p "Continuing in 5 seconds..." -t 5
echo "Continuing..."

Dans votre script:

command1
read -p 'Pausing for 30 seconds' -t 30
command2

Notez que vous pouvez appuyer sur Enterpour contourner le délai d'expiration.

Jose Rosa
la source