GNU/Linux >> Tutoriales Linux >  >> Linux

Usando el comando de suspensión de Linux en Bash Scripts

El comando de suspensión de Linux es uno de los comandos más simples que existen. Como puedes adivinar por el nombre, su única función es dormir. En otras palabras, introduce un retraso por un tiempo específico.

Entonces, si usa el comando de suspensión con x y el siguiente comando solo se puede ejecutar después de x segundos.

El comando de suspensión tiene una sintaxis simple:

sleep Number[Suffix]

Aquí, el sufijo podría ser:

  • s por segundos. Este es el valor predeterminado.
  • m por minutos.
  • h por horas.
  • d durante días.

Veamos algunos ejemplos del comando de suspensión.

Ejemplos del comando Bash sleep

Aunque puede usarlo directamente en un shell, el comando de suspensión se usa comúnmente para introducir un retraso en la ejecución de un script bash. Voy a mostrar el uso del comando de suspensión a través de scripts bash de muestra.

Comando de suspensión sin sufijo cuenta en segundos

Supongamos que desea pausar su secuencia de comandos bash durante 5 segundos, puede usar el modo de suspensión de esta manera:

sleep 5

En un script bash de muestra, podría verse así:

!/bin/bash
echo "Sleeping for 5 seconds…"
sleep 5
echo "Completed"

Si lo ejecuta con el comando de tiempo, verá que el script bash realmente se ejecutó durante (un poco) más de 5 segundos.

time ./sleep.sh 
Sleeping for 5 seconds…
Completed

real    0m5.008s
user    0m0.000s
sys    0m0.007s

Comando de suspensión con sufijo de minuto, hora o día

Puede especificar el tiempo de sueño en minutos de la siguiente manera:

sleep 1m

Esto pausará el script/shell por un minuto. Si desea retrasar el script en horas, puede hacerlo con la opción h:

sleep 2h

Incluso si desea pausar el script bash durante días, puede hacerlo con el sufijo d:

sleep 5d

Esto podría ayudar si desea ejecutar en días alternos o entre semana.

Comando de dormir con una combinación de segundo, minuto, hora y día

No está obligado a usar solo un sufijo a la vez. Puede usar más de un sufijo y la duración del sueño es la suma de todos los sufijos.

Por ejemplo, si usa el siguiente comando:

sleep 1h 10m 5s

Esto hará que el script espere 1 hora, 10 minutos y 5 segundos. Tenga en cuenta que el sufijo s sigue siendo opcional aquí.

Consejo adicional:duerme menos de un segundo

Es posible que haya notado que la unidad de tiempo más pequeña en el comando de suspensión es el segundo. Pero, ¿qué sucede si su script bash duerme durante milisegundos?

Lo bueno es que puedes usar punto flotante (puntos decimales) con el comando de suspensión.

Entonces, si desea introducir una pausa de 5 milisegundos, utilícela así:

sleep 0.005

También puede usar puntos decimales con otros sufijos.

sleep 1.5h 7.5m

Introducirá un retraso de 1 hora, 37 minutos y 30 segundos.

Espero que no te hayas dormido mientras leías estos ejemplos de comandos de suspensión 😉

Si está interesado en los scripts de shell, tal vez también le gustaría leer sobre la comparación de cadenas en bash. Si tiene preguntas o sugerencias, no dude en preguntar.


Linux
  1. Cómo borrar el historial de Bash en Linux

  2. Usando Bash para la automatización

  3. ¿El comando de suspensión usando el comando de pantalla no se muestra en Ps?

  4. Uso del comando Linux Basename en Bash Scripts

  5. Mover una carpeta en Linux usando el comando mv

Cómo usar el comando echo en Bash Scripts en Linux

Tutorial sobre el uso del comando Timeout en Linux

Programar trabajos en Linux con el comando 'at'

Usando el comando Watch en Linux

Usando el comando Dirname de Linux en Bash Scripts

Usando cut en Linux Terminal