Monitorar alterações em arquivos é uma tarefa comum para administradores de sistemas e desenvolvedores. O método mais eficaz e confiável é utilizar o comando inotifywait, que faz parte do pacote inotify-tools. Este comando permite observar eventos de arquivos e diretórios em tempo real, oferecendo uma solução leve e eficiente para monitoramento de alterações.
inotify-tools instalado (disponível nos repositórios padrão da maioria das distribuições Linux).Primeiro, instale o pacote inotify-tools no seu sistema. Este pacote contém as ferramentas necessárias para monitorar eventos de arquivos.
sudo apt-get install inotify-tools # Para Debian/Ubuntu
# ou
sudo yum install inotify-tools # Para RHEL/CentOS
Crie um arquivo de script com o seguinte conteúdo. Este script monitorará um arquivo específico e exibirá uma mensagem sempre que ele for modificado.
#!/bin/bash
# Arquivo a ser monitorado
FILE_TO_WATCH="/caminho/para/seu/arquivo.txt"
# Loop infinito para monitoramento
while true; do
# Aguarda por eventos de modificação no arquivo
inotifywait -e modify "$FILE_TO_WATCH"
# Exibe mensagem quando o arquivo é modificado
echo "O arquivo $FILE_TO_WATCH foi modificado em $(date)"
done
Dê permissão de execução ao script para que ele possa ser executado diretamente.
chmod +x script_monitoramento.sh
Execute o script no terminal. Ele começará a monitorar o arquivo especificado e exibirá uma mensagem sempre que uma modificação for detectada.
./script_monitoramento.sh
Considere que você deseja monitorar o arquivo /home/usuario/documento.txt. Abaixo está um exemplo de como o script funcionaria:
| Ação | Saída do Script |
|---|---|
Arquivo documento.txt é modificado |
O arquivo /home/usuario/documento.txt foi modificado em Thu Jun 20 10:30:45 UTC 2024 |
Arquivo documento.txt é modificado novamente |
O arquivo /home/usuario/documento.txt foi modificado em Thu Jun 20 10:31:12 UTC 2024 |
Com este método, você automatiza o monitoramento de alterações em arquivos específicos em segundos, evitando a necessidade de verificação manual constante e garantindo que você seja notificado imediatamente de qualquer modificação.