In questo tutorial, ti presenteremo l'watch
comando.
watch
viene utilizzato per eseguire qualsiasi comando arbitrario a intervalli regolari e visualizza l'output del comando nella finestra del terminale.
È utile quando devi eseguire un comando ripetutamente e guardare l'output del comando cambiare nel tempo. Ad esempio, puoi usare watch
comando per monitorare il tempo di attività del sistema o l'utilizzo del disco.
L'watch
l'utilità fa parte di procps
(o procps-ng
) pacchetto preinstallato su quasi tutte le distribuzioni Linux.
Come utilizzare l'watch
Comando #
La sintassi per watch
il comando è il seguente:
watch [OPTIONS] COMMAND
Per illustrare meglio come watch
il comando funziona, eseguiamo il date
comando:
watch date
Come puoi vedere nell'immagine sopra, l'watch
comando cancellerà temporaneamente tutto il contenuto del terminale e inizierà a eseguire il comando fornito a intervalli regolari. Se utilizzato senza alcuna opzione watch
eseguirà il comando specificato ogni due secondi.
Nella parte in alto a sinistra dell'intestazione dello schermo puoi vedere l'watch
intervallo di aggiornamento e il comando eseguito (Every 2.0s: date
), mentre in alto a sinistra watch
mostra l'ora e la data correnti. Se vuoi disattivare l'intestazione usa -t
(--no-title
) opzione.
L'output del comando specificato viene mostrato sullo schermo e aggiornato regolarmente ogni due secondi.
Per uscire da watch
comando, premi semplicemente Ctrl+C
combinazione di tasti. Puoi anche impostare watch
per uscire quando l'output del comando cambia usando -g
(--chgexit
) opzione.
Nelle sezioni seguenti esamineremo il watch
più comunemente utilizzato opzioni di comando.
Come modificare l'intervallo di tempo #
Cosa succede se l'intervallo di aggiornamento predefinito di due secondi non è adatto al tuo caso d'uso?
Il -n
(--interval
) l'opzione seguita dal numero di secondi desiderato consente di modificare l'intervallo di tempo tra gli aggiornamenti:
watch -n INTERVAL_IN_SECONDS COMMAND
Ad esempio, per monitorare l'utilizzo dello spazio su disco con il df
comando e aggiorna lo schermo ogni cinque secondi su cui verresti eseguito:
watch -n 5 df -h
Evidenziazione della differenza tra gli aggiornamenti #
Il -d
(--difference
), l'opzione causerà watch
per evidenziare le modifiche tra aggiornamenti successivi.
watch -d COMMAND
Supponiamo che tu voglia monitorare il tempo di attività del sistema eseguendo uptime
commandand per evidenziare le modifiche. Il comando sarebbe:
watch -d uptime
Se vuoi che i momenti salienti siano permanenti, passa =cumulative
al -d
opzione. Ciò significa che tutti i valori che sono stati modificati rimarranno evidenziati.
watch -d=cumulative COMMAND
Comandi con pipe #
Se si desidera eseguire un comando che contiene pipe è necessario racchiudere il comando tra virgolette singole o doppie. Se non includi il comando completo, watch eseguirà solo il primo comando e quindi reindirizza il suo output al comando successivo nella pipeline.
watch 'COMMAND_1 | COMMAND_2'
Ad esempio, il comando seguente monitorerà il numero di connessioni attive sulla porta 80
utilizzando una combinazione di netstat
e grep
utilità:
watch "netstat -anp | grep -c ':80\b.*LISTEN'"
Conclusione #
A questo punto dovresti avere una buona comprensione di come usare Linux watch
comando. Puoi sempre visualizzare tutti gli watch
disponibili opzioni di comando digitando man watch
nel tuo terminale.
Se hai domande o feedback, sentiti libero di lasciare un commento.