Introduzione
Per eseguire ripetutamente un comando o un lavoro a intervalli di tempo regolari mentre si lavora in Linux, è possibile utilizzare i lavori cron o gli script bash. Tuttavia, Linux offre anche una soluzione integrata più semplice:watch comando.
In questo tutorial imparerai l'watch sintassi dei comandi, come funziona e le diverse cose che può aiutarti a fare.
Prerequisiti
- Un sistema che esegue una distribuzione Linux (scopri come installare Ubuntu 20.04, come installare CentOS 7 o come installare Arch Linux)
- Un account con privilegi sudo
- Accesso alla finestra del terminale/riga di comando
Panoramica dei comandi di Linux Watch
L'watch command è un'utilità Linux integrata utilizzata per eseguire comandi definiti dall'utente a intervalli regolari. Cancella temporaneamente tutto il contenuto del terminale e visualizza l'output del comando allegato, insieme alla data e all'ora di sistema correnti.
Per impostazione predefinita, il watch il comando aggiorna l'output ogni due secondi. Premi Ctrl+C per uscire dall'output del comando.
L'watch comando è utile quando è necessario monitorare le modifiche nell'output di un comando nel tempo. Ciò include l'utilizzo del disco, il tempo di attività del sistema o gli errori di rilevamento.
Sintassi del comando di controllo Linux
L'watch comando utilizza la seguente sintassi:
watch [option] [command] Dove:
[option]:l'aggiunta di un'opzione cambia il modo in cuiwatchcomando si comporta. Le opzioni disponibili sono elencate di seguito.[command]:un comando definito dall'utente che desideri eseguire ripetutamente.
L'watch le opzioni dei comandi includono:
-n , --interval | Consente di specificare l'intervallo tra gli aggiornamenti dell'output. |
-d , --differences | Evidenzia le differenze tra gli aggiornamenti di output. |
-g , --chgexit | Esce da watch comando quando l'output del comando definito dall'utente cambia. |
-t , --no-title | Rimuove l'intestazione che mostra l'intervallo, il comando e l'ora e la data correnti. |
-b , --beep | Riproduce un avviso sonoro (beep) se il comando esce con un errore. |
-p , --precise | Tentativi di eseguire il comando dopo il numero esatto di secondi definito da --interval opzione. |
-e , --errexit | Interrompe gli aggiornamenti di output in caso di errore ed esce dal comando dopo la pressione di un tasto. |
-c , --color | Interpreta le sequenze di colori e stili ANSI. |
-x , --exec | Passa il comando definito dall'utente a exec , riducendo la necessità di citazioni aggiuntive. |
-w , --no-linewrap | Disattiva il ritorno a capo delle righe e tronca invece le righe lunghe. |
-h , --help | Visualizza il testo della guida ed esce. |
-v , --version | Visualizza le informazioni sulla versione ed esce. |
Esempi di comandi per Linux Watch
Ecco alcuni dei modi in cui puoi utilizzare watch opzioni di comando per ottenere risultati diversi:
Esegui comando con un intervallo personalizzato
Imposta un intervallo personalizzato per eseguire un comando definito dall'utente e mostra l'output utilizzando il -n o --interval opzione:
watch -n [interval in seconds] [command] Ad esempio, per visualizzare l'ora e la data del sistema ogni 5 secondi, eseguire:
watch -n 5 date
Evidenziazione delle modifiche tra gli aggiornamenti
Usa il -d o --difference opzione per evidenziare le modifiche tra aggiornamenti di output successivi:
watch -d [command] Ad esempio, visualizza la data e l'ora del sistema nell'intervallo di 2 secondi predefinito con le modifiche evidenziate:
watch -d date
Passa =cumulative al -d opzione se vuoi che tutti i valori che sono mai cambiati rimangano evidenziati:
watch -d=cumulative date Esci in caso di modifica
Il -g o --chgexit opzione fa uscire il comando watch se c'è una modifica nell'output:
watch -g [command] Ad esempio, l'aggiunta del comando free monitora il consumo di memoria del tuo sistema ed esce se il valore cambia:
watch -g free
Nascondi l'intestazione del comando dell'orologio
Disattiva l'intestazione contenente l'intervallo di tempo, il comando definito dall'utente e l'ora di sistema corrente nel watch output del comando utilizzando il -t o --no-title opzione:
watch -t [command] Tornando all'esempio di visualizzazione della data e dell'ora del sistema, questa volta senza l'intestazione:
watch -t date
Avviso in caso di errore
L'watch Il comando utilizza il pacchetto beep per riprodurre un avviso sonoro se l'aggiornamento dell'output non riesce a causa di un errore. Per farlo, usa il -b o --beep opzione:
watch -b [command] Utilizzo di comandi complessi
L'watch command consente inoltre di utilizzare comandi definiti dall'utente più complessi, con i propri argomenti e opzioni. Un modo per farlo è utilizzare la barra rovesciata ('\' ) simbolo:
watch [options] \ L'uso del comando sopra ti porta alla riga successiva nel terminale, dove devi aggiungere il comando definito dall'utente. Dopo aver premuto Invio , esegue il comando. Ad esempio:
watch -n 5 \
echo "watch command example output"
Un'altra opzione consiste nell'aggiungere il comando di definizione dell'utente tra virgolette singole:
watch [options] '[command]' Utilizzando l'esempio sopra, il comando sarebbe:
watch -n 5 'echo "watch command example output"'