Cómo ejecutar un comando con límite de tiempo en tu Linux

Published:

Hoy vamos a usar una herramienta muy útil, llamada timeout, viene en la mayoría de las distribuciones y su funcionalidad es permitirnos establecer un límite de tiempo para ejecutar cualquier comando que necesitemos correr, una vez que ese tiempo expira, el comando deja de ejecutarse.

Adicionalmente vamos a instalar una alternativa llamada timelimit que viene con algunas opciones más, pero requiere instalación.

1- Ejecutando comandos de Linux con la herramienta Timeout

Su sintaxis es la siguiente.

timeout [OPCIÓN] DURACIÓN COMANDO [ARG] ...

Pero vamos a los ejemplos que es lo que nos interesa, y en principio lo combinaremos con el famoso ping.

En el siguiente ejemplo vamos a usar timeout seguido del comando ping

[Tiempo en segundos]
timeout 4s ping google.com

[No hace falta usar el s para especificar segundos]
timeout 7 ping google.com

Otras opciones que podemos usar son:

  • s representando segundos, opción por defecto
  • m representando minutos
  • h representando horas
  • d representando días

2- Ejecutando comandos de Linux usando el programa Timelimit

Ahora te muestro otra alternativa, que para el caso de Debian 10, se puede instalar desde los repositorios haciendo un:

apt install timelimit

Y la forma de usarlo es:

timelimit -t 6 ping google.com

Hay que tener en cuenta que si no se especifican argumentos, Timelimit usa los valores predeterminados: warntime = 3600 segundos, warnsig = 15killtime = 120 y killsig = 9.

Conclusión:

Con ambas opciones podemos ver el manual con man y el comando, porque nos traen bastantes más opciones con las que jugar.

- Advertisement -
Jorge
Jorgehttps://nksistemas.com
Soy Jorge, Sr Sysadmin Linux/DevOps/SRE y creador de NKSistemas.com Trabajo con plataformas: Linux, Windows, AWS, GCP, VMware, Helm, kubernetes, Docker, etc.

Related articles