Como usar o comando watch do Linux

Com certeza você já precisou executar o mesmo comando dezenas de vezes no terminal e fez isso utilizando seta pra cima + enter. Vou te mostrar neste post como usar o comando watch do Linux, pois ele te possibilita executar o mesmo programa continuamente. Além disso, ele pode ser usado tanto com comandos linux quanto com scripts criados por você.

Por padrão o watch executa o programa a cada dois segundos, porém você pode alterar este comportamento usando os parâmetros -n ou --interval.

Utilização do comando watch

No exemplo abaixo vamos mostrar a data a cada 2 segundos:

cesar@coffops-lab$ watch date

Alterar o intervalo de execução para 3 segundos pode ser feito com a opção -n (pode usar também —interval):

cesar@coffops-lab$ watch -n 3 date

Para eliminar a parte de cima (cabeçalho) deixando apenas a saída do comando adicione a opção -t:

cesar@coffops-lab$ watch -t date

Para destacar o que mudou na saída entre a última e a penúltima execução vamos utilizar a opção -d:

cesar@coffops-lab$ watch -d date

É possível também utiliza a opção -g, que indica ao watch que ele deve ser interrompido quando houver alteração entre a última e a penúltima execução do programa:

cesar@coffops-lab$ watch -g date

Exemplos práticos de utilização

Acompanhar alteração na quantidade de arquivos e diretórios destacando as mudanças:

cesar@coffops-lab$ watch -d "ls | wc -l"

Criar ou atualizar a data do arquivo file.lock a cada 10 segundos.

cesar@coffops-lab$ watch -n 10 touch file.lock

Executar a cada 60 segundos comando curl que mostra o IP externo da conexão do host:

cesar@coffops-lab$ watch -t -n 60 curl -s ifconfig.me

Acompanhar usuários logados no sistema:

cesar@coffops-lab$ watch -t -n 10 w

Conclusão

Por fim, nós podemos usar o watch para acompanhar mudanças em arquivos, diretórios, host, além de usar também com comandos/programas que efetuam alterações e não possuem saída no stdout.

Quer saber mais dicas de Linux? Aqui no blog e no canal do YouTube da Coffops tem muito mais.

Deixe um comentário

O seu endereço de e-mail não será publicado.