Linux en español
comando timeout
Tutoriales

Ejecutar comandos por un tiempo limitado en Linux

1 minuto de lectura

Traigo un tip interesante para probar, y es poder correr una aplicación por el tiempo que necesitemos y luego cerrarla, el comando en cuestión se llama timeout presente en el paquete coreutils y por lo general esta instalado en la mayoría de las distribuciones linux.

Vamos a ver un ejemplo del comando ping y que después de 6 segundos corte el proceso:

HIT Closer

timeout 6s ping google.com

Ahora bien, esto hará que el comando ping finalice sin mostrar el resumen correspondiente, esto se debe a diferentes señales enviadas: mientras que Ctrl+C corresponde con SIGINT (señal 2), timeout envía por defecto SIGTERM (señal 15) cuando no se especifica una como parámetro.

Es posible cambiar la señal con la opción -s y poder enviar SIGINT en lugar de SIGTERM al alcanzar el límite de tiempo:

timeout -s SIGINT 6s ping google.com

Algo interesante es que timeout soporta el envío de una señal SIGKILL (señal 9) posterior, si es que el proceso no ha finalizado correctamente. Puede pasar que los procesos no responden en tiempo y forma a la señal SIGTERM o SIGINT, de esta forma es posible enviar una última señal SIGKILL para matarlos definitivamente.

Otro ejemplo interesante es por ejemplo correr el comando top por un determinado tiempo que paso a mostrar:

timeout 1m top

En fin, cualquier comando puede ser lanzado y detenido a gusto del usuario, sin duda hay que darle unos minutos para probarlo.

5/5 - (1 voto)

Entradas relaccionadas

Cómo montar un miniPC con una Raspberry por menos de 60€

Diego García Cuesta

Cómo generar código de autenticación de dos factores en Linux

Linux en Español

HSTS: Qué es y cómo añadirlo a tu web

Diego García Cuesta

Cómo instalar Ubuntu MATE en Raspberry Pi 4

Diego García Cuesta

Cómo ver las redes WiFi disponibles desde el terminal de linux

Diego García Cuesta

Redirigir HTTP a HTTPS en Apache/Nginx

Diego García Cuesta

Este sitio web utiliza cookies para mejorar su experiencia. Asumiremos que está de acuerdo con esto, pero puede optar por no participar si lo desea. Aceptar Leer más

Política de privacidad y cookies