Introdução
Na movimentada cidade medieval de Tuxville, conhecida por seus vastos mercados e artesanato refinado, vivia um humilde agricultor chamado Gregor. Certo dia, ele ouviu os cartógrafos reais dizendo que precisavam de alguém capaz de monitorar o progresso do crescimento das plantações do reino e relatar os dados a cada hora. Considerando esta uma oportunidade de ouro para servir ao seu reino e ganhar algumas moedas de prata, Gregor decidiu aventurar-se no aprendizado da arte da observação constante com um pouco de magia do reino Linux. Ele precisa da sua ajuda para dominar o comando que pode se repetir para vigiar os campos de cultivo incansavelmente.
Entendendo o comando watch
Nesta etapa, você ajudará Gregor a aprender como utilizar o comando watch para monitorar o status de suas plantações.
Tarefas
- Tarefa 1: Aprender a sintaxe do comando
watche sua operação básica. - Tarefa 2: Usar o comando
watchpara listar repetidamente o conteúdo do diretório onde os relatórios de cultivo são armazenados.
Requisitos
- Familiarize-se com as páginas do manual (
man) para entender como o comandowatchfunciona. - O caminho de trabalho padrão para as operações no terminal é
/home/labex/project, e o caminho relativo é~/project. - Armazene os relatórios de cultivo em um diretório chamado
cropsdentro do caminho de trabalho. - Use o comando
watchpara monitorar o diretóriocrops. - As instruções de comando devem ser executadas no terminal zsh.
Exemplo
Antes de usar o watch, o diretório de Gregor se parece com isto:
ll /home/labex/project/crops
total 0
Após usar o watch, você pode abrir um novo terminal e criar alguns arquivos no diretório crops. O comando watch exibirá o conteúdo do diretório a cada 2 segundos.
Gerando um Relatório com Carimbos de Data/Hora
Nesta etapa, Gregor gerará um arquivo de relatório com carimbos de data/hora (timestamps) usando o comando watch.
Tarefas
- Tarefa 1: Escrever um script que adicione uma nova entrada de data/hora a um arquivo chamado
report.txtdentro do diretóriocropsa cada 1 segundo. - Tarefa 2: Usar o comando
watchpara executar este script repetidamente.
Requisitos
Crie um script chamado
timestamp.shdentro do diretório~/project/crops. Use o comandodatedentro do script para obter o carimbo de data/hora atual.#!/bin/bash echo "$(date)" >> /home/labex/project/crops/report.txtO arquivo
report.txtdeve conter o histórico dos carimbos de data/hora executados.Utilize o comando
watchpara rodar o script a cada 1 segundo.
Exemplo
Após usar o comando watch para executar continuamente o script timestamp.sh, o arquivo report.txt será atualizado com um novo carimbo de data/hora a cada segundo.
Você pode verificar se o comando watch está funcionando corretamente executando o seguinte comando:
cat /home/labex/project/crops/report.txt
A saída deve ser semelhante a esta:
Sat Aug 12 09:00:01 UTC 2023
Sat Aug 12 09:02:01 UTC 2023
Sat Aug 12 09:04:01 UTC 2023
Resumo
Neste desafio, você teve a tarefa de guiar Gregor no domínio do comando watch para manter um olhar vigilante sobre suas plantações. Ao utilizar este comando poderoso, você o ajudou com sucesso a gerar e atualizar continuamente um relatório de cultivo que satisfaz as exigências dos cartógrafos reais. Você não apenas aprimorou suas habilidades na linha de comando Linux, mas também contribuiu para a excelência agrícola de Tuxville.



