web-dev-qa-db-fra.com

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

Je veux faire comme suit:

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

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

Comment faire ça?

13
Pandya

Vous pouvez utiliser ceci dans un terminal:

command1; sleep 30; command2

Dans votre script:

#!/bin/bash
command1
sleep 30
command2
exit

Suffixe pour le temps de sommeil:

  • spendant secondes (valeur par défaut)
  • mpour les minutes
  • hpendant des heures
  • dpendant des jours
24
TuKsn

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 Enter pour contourner le délai d'attente.

3
Jose Rosa