GNU/Linux >> Linux Esercitazione >  >> Linux

Come eseguire un comando con limite di tempo (timeout) in Linux

Linux viene fornito con una generosità di comandi, ogni comando unico e utilizzato in casi specifici. L'obiettivo di Linux è aiutarti a essere il più veloce ed efficiente possibile. Una proprietà di un comando Linux è il limite di tempo. Puoi impostare un limite di tempo per qualsiasi comando desideri. Se il tempo scade, il comando interrompe l'esecuzione.

In questo breve tutorial imparerai due metodi su come utilizzare un limite di tempo nei tuoi comandi.

In questa pagina:
  1. Esegui comandi Linux utilizzando lo strumento di timeout
  2. Esegui comandi Linux utilizzando il programma Timelimit

Esegui comandi Linux utilizzando lo strumento di timeout

Linux ha un'utilità della riga di comando chiamata timeout , che ti consente di eseguire un comando con un limite di tempo.

La sua sintassi è la seguente.

timeout [OPTION] DURATION COMMAND [ARG]...

Per utilizzare il comando, specifica un timeout value (in secondi) con il comando che si desidera eseguire. Ad esempio, per eseguire il timeout di un comando ping dopo 5 secondi, puoi eseguire il seguente comando.

# timeout 5s ping google.com

Non è necessario specificare i i dopo il numero 5 . Il comando seguente è lo stesso e continuerà a funzionare.

# timeout 5 ping google.com

Altri suffissi includono:

  • m che rappresentano i minuti
  • h che rappresentano le ore
  • d che rappresentano i giorni

A volte i comandi possono continuare a essere eseguiti anche dopo che il timeout ha inviato il segnale iniziale. In questi casi, puoi usare il --kill-after opzione.

Ecco la sintassi.

-k, --kill-after=DURATION

Devi specificare una durata per il timeout sapere dopo quanto tempo deve essere inviato il segnale di kill.

Ad esempio, il comando mostrato verrà terminato dopo 8 secondi.

# timeout 8s tail -f /var/log/syslog

Esegui comandi Linux utilizzando il programma Timelimit

Il limite di tempo programma esegue un dato comando quindi termina il processo dopo un tempo specificato utilizzando un dato segnale. Inizialmente supera un segnale di avviso, quindi, dopo un timeout, invia il segnale di uccisione.

A differenza del timeout opzione, Limite di tempo ha più opzioni come killsig , avviso , tempo di riposo e avviso .

Limite di tempo può essere trovato nei repository di Debian -based systems e per installarlo, utilizzare il comando seguente.

$ sudo apt install timelimit

Per basato su archi sistemi, puoi installarlo utilizzando AUR programmi di supporto, ad esempio Pacaur Pacman e Imballatore .

# Pacman -S timelimit
# pacaur -S timelimit
# packer -S timelimit

Altre distribuzioni Linux, puoi scaricare la sorgente timelimit e installarla manualmente.

Dopo l'installazione, eseguire il comando seguente e specificare l'ora. In questo esempio, puoi utilizzare 10 secondi.

$ timelimit -t10 tail -f /var/log/pacman.log

Tieni presente che se non specifichi argomenti, Timelimit utilizza i valori predefiniti:wartime=3600 secondi, avviso=15 , tempo di riposo=120 e killsig=9 .

Conclusione

In questa guida, hai imparato come eseguire comandi con un limite di tempo in Linux. In fase di revisione, puoi utilizzare il Timeout comando o il Limite di tempo utilità.

Il Timeout comando è facile da usare, ma il Timelimit l'utilità è un po' complicata ma ha più opzioni. Puoi scegliere l'opzione più adatta a seconda delle tue esigenze.


Linux
  1. Pianifica un'attività con il comando Linux at

  2. Come utilizzare il comando Vmstat in Linux spiegato con esempi

  3. Controlla quanto tempo impiega uno script Bash per essere eseguito con il comando Time

  4. Come limitare i comandi utente in Linux

  5. linux:come eseguire un comando in una determinata directory

Come eseguire i comandi Linux in background

Comando di timeout in Linux

Come utilizzare il comando Linux rm con esempi

Come eseguire un comando per un tempo specifico in Linux

Come eseguire un alias con Sudo in Linux

Esegui comandi con un limite di tempo in Ubuntu 20.04