timeout
Linux · Procesos · solo documentación
Qué hace y para qué sirve
Ejecuta un comando y lo termina si tarda más del tiempo indicado. Es útil para evitar que un proceso se quede colgado.
Sintaxis
timeout [opciones] duración comando [argumentos...]
Opciones y parámetros
duraciónTiempo máximo; admite sufijos s, m, h y d (por ejemplo 30s o 2m).
-s señalSeñal que se envía al agotarse el tiempo; por defecto TERM.
-k duraciónSi el comando sigue vivo tras ese tiempo, lo mata con KILL.
--preserve-statusDevuelve el código de salida del comando aunque se agote el tiempo.
--foregroundPermite ejecutarlo desde un script sin que se bloquee con la terminal.
-vInforma de las señales que envía.
Ejemplos de uso
timeout 5 ping -c 10 localhostCorta el ping a los 5 segundos aunque faltaran paquetes.
timeout -s KILL 10 ./lento.shMata el script con KILL si pasa de 10 segundos.
timeout -k 5 30 ./procesoPide cerrar a los 30 segundos y fuerza el cierre 5 segundos después.
timeout 2m ./copia.sh; echo $?Si se agota el tiempo, el código de salida es 124.
Notas y errores frecuentes
- Un código de salida 124 indica que el comando fue cortado por el tiempo.