Monitoramento de Arquivos em Tempo Real com tail
Uma das características mais poderosas do comando tail é sua capacidade de monitorar arquivos em tempo real. Isso é particularmente útil para observar arquivos de log à medida que são escritos.
Vamos criar um script simples que simula um arquivo de log sendo continuamente atualizado:
cd ~/project
Crie um arquivo de script chamado log_generator.sh:
nano log_generator.sh
Adicione o seguinte conteúdo ao script:
#!/bin/bash
for ((i = 1; i <= 10; i++)); do
echo "[$(date '+%Y-%m-%d %H:%M:%S')] Log entry $i: System event recorded" >> simulation.log
sleep 2
done
Salve o arquivo pressionando Ctrl+O, depois Enter e saia do nano com Ctrl+X.
Torne o script executável:
chmod +x log_generator.sh
Agora, vamos usar o comando tail com a opção -f para monitorar o arquivo de log em tempo real. A opção -f significa "follow" (seguir), o que faz com que o tail continue monitorando o arquivo em busca de alterações.
Abra uma nova janela de terminal clicando no ícone do terminal na barra de tarefas (ou use o atalho de teclado Ctrl+Alt+T). No novo terminal, execute:
cd ~/project
tail -f simulation.log
Agora, volte para a sua janela de terminal original e execute o script gerador de log:
./log_generator.sh
No terminal onde você está executando tail -f, você deve ver novas entradas de log aparecendo a cada 2 segundos:
[2023-11-01 12:34:56] Log entry 1: System event recorded
[2023-11-01 12:34:58] Log entry 2: System event recorded
[2023-11-01 12:35:00] Log entry 3: System event recorded
...
Após a conclusão do script (após cerca de 20 segundos), volte para o terminal onde tail -f está sendo executado e pressione Ctrl+C para interromper o monitoramento.
Essa capacidade de monitoramento em tempo real torna o tail -f uma ferramenta inestimável para administradores de sistema que precisam observar arquivos de log em busca de erros ou eventos importantes.