In diverse occasioni, potrebbe essere necessario eseguire ripetutamente un comando o un'utilità dopo un certo intervallo di tempo. Possiamo utilizzare lavori cron specifici con l'aiuto di script bash o utilizzando altri linguaggi di programmazione. Tuttavia, Linux ha un comando watch integrato che viene utilizzato per eseguire altri comandi a intervalli regolari, quindi visualizza l'output nel terminale. L'utilità watch è preinstallata su quasi tutte le distribuzioni Linux.
Comando Linux Watch con esempi
In questo tutorial, ti mostreremo sette modi diversi per utilizzare il comando watch di Linux.
1. Esegui comando ogni 2 secondi
Per impostazione predefinita, il comando watch viene eseguito ogni 2 secondi e mostra l'output sul terminale. Continua a funzionare finché non viene interrotto dall'utente.
Sintassi:
watch <option> <command>
Dove
watch date
Esempio:
2. Esegui comando ogni N secondi
L'intervallo di aggiornamento del comando di controllo può essere ignorato. Significa che puoi anche modificare l'intervallo di aggiornamento da 2 secondi all'intervallo desiderato.
Sintassi:
watch -n <interval-in-seconds> <command>
Dove
watch -n 5 date
Esempio:
3. Evidenziando le differenze tra gli aggiornamenti
È inoltre possibile evidenziare le differenze tra l'uscita precedente e l'uscita corrente. Quindi, invece di leggere l'intero output, puoi tenere d'occhio le modifiche.
Sintassi:
watch -d <command>
Tuttavia, se l'intervallo tra gli aggiornamenti è molto breve, sarà difficile esaminare le differenze, quindi è necessario impostare un intervallo di aggiornamento ragionevole.
watch -n 5 -d date
Esempio:
4. Nascondi intestazione nell'output
L'output del comando Watch mostra un'intestazione contenente l'intervallo di tempo, il comando, il nome del sistema e la data del sistema. Tuttavia, se non vuoi vedere questa porzione, puoi anche nasconderla.
Sintassi:
watch -t <command>
watch -t date
Esempio:
5. Segnale acustico in caso di errore
Il comando watch può anche emettere un segnale acustico se un aggiornamento non riesce. Affinché ciò avvenga, in primo luogo, potrebbe essere necessario verificare se il pacchetto di segnali acustici è installato o meno. Nel caso non sia installato, puoi installarlo usando il seguente comando:
sudo apt install beep
Sintassi:
watch -b date
6. Esci al cambiamento
Per impostazione predefinita, il comando watch continua a essere eseguito finché non viene interrotto manualmente dall'utente. Tuttavia, puoi farlo uscire se identifica anche una modifica nell'output.
Sintassi:
watch -g <command>
watch -n 10 -g date
Esempio:
Ora guarda l'uscita; restituisce un certo stato che può essere ottenuto usando il comando seguente:
echo $?
Come puoi vedere nello screenshot sopra, mostra alcuni flag interi che iniziano da 0 a 8. Ognuno di questi flag ha il suo significato e i dettagli di questi flag sono disponibili nella pagina man.
man watch
7. Utilizzo di grandi comandi
Puoi usare altri comandi con il comando watch in un modo più pulito. Ci sono diversi modi per farlo. Puoi usare \ sign dopo il comando watch e le sue opzioni.
watch -n 10 -d \
Esempio:
Puoi anche scrivere il comando personalizzato completo anche tra virgolette singole.
watch <options> '<commands>'
Esempio:
Conclusione
A questo punto dovresti avere una buona comprensione del comando watch e della sua importanza, specialmente quando vuoi monitorare le risorse del tuo sistema come il disco rigido, le modifiche alla rete, l'utilizzo della CPU, ecc. Puoi ottenere maggiori informazioni sul comando watch nella sua pagina man . Usa il comando man watch nel tuo terminale per visualizzare la pagina man.