Repetição de Comandos Linux em Tuxville

LinuxBeginner
Pratique Agora

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 watch e sua operação básica.
  • Tarefa 2: Usar o comando watch para 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 comando watch funciona.
  • 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 crops dentro do caminho de trabalho.
  • Use o comando watch para monitorar o diretório crops.
  • 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.txt dentro do diretório crops a cada 1 segundo.
  • Tarefa 2: Usar o comando watch para executar este script repetidamente.

Requisitos

  • Crie um script chamado timestamp.sh dentro do diretório ~/project/crops. Use o comando date dentro do script para obter o carimbo de data/hora atual.

    #!/bin/bash
    echo "$(date)" >> /home/labex/project/crops/report.txt
    
  • O arquivo report.txt deve conter o histórico dos carimbos de data/hora executados.

  • Utilize o comando watch para 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.

✨ Verificar Solução e Praticar✨ Verificar Solução e Praticar