¿Cómo hacer una pausa con un tiempo específico entre dos comandos en el script?

17

Quiero hacer lo siguiente:

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

Este es solo un script de ejemplo con una pausa de 30 segundos entre la ejecución del comando 2.

¿Como hacer esto?

Pandya
fuente

Respuestas:

26

Puedes usar esto en una terminal:

command1; sleep 30; command2

En tu guión:

#!/bin/bash
command1
sleep 30
command2
exit

Sufijo para el tiempo de sueño:

  • s por segundos (el valor predeterminado)
  • m por minutos
  • h por horas
  • d por dias
TuKsn
fuente
4

Puedes usar read -t. P.ej:

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

En tu guión:

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

Tenga en cuenta que puede presionar Enterpara omitir el tiempo de espera.

Jose rosa
fuente