Arquivando e Removendo Arquivos de Log Obsoletos
Sua tarefa final é uma pequena faxina. O diretório ~/project/logs está acumulando arquivos de log, e aqueles de 2023 não são mais necessários para as operações diárias. Para economizar espaço e manter as coisas organizadas, você precisa compactar esses logs antigos em um único arquivo de arquivo (archive) e depois remover os arquivos originais.
Entendendo o comando tar
O comando tar é uma ferramenta poderosa do Linux para criar e manipular arquivos de arquivamento. "Tar" originalmente significava "Tape Archive" (Arquivo em Fita) porque foi projetado para gravar dados em fitas magnéticas, mas hoje é comumente usado para criar arquivos compactados em disco.
Ao usar o tar, você está essencialmente agrupando vários arquivos em um único arquivo (chamado de archive), e pode opcionalmente compactar esse arquivo para economizar espaço. O formato de compactação mais comum é o gzip, que adiciona a extensão .gz ao nome do arquivo.
O comando tar usa diferentes opções (flags) para controlar seu comportamento:
c: Cria um novo arquivo (create)
z: Compacta o arquivo usando gzip
f: Especifica o nome do arquivo resultante (filename)
Portanto, tar -czf arquivo.tar.gz arquivo1 arquivo2 cria um novo arquivo compactado chamado arquivo.tar.gz contendo o arquivo1 e o arquivo2.
Tarefas
- Navegue até o diretório
~/project/logs.
- Crie um arquivo tar compactado chamado
old_logs.tar.gz que contenha todos os arquivos de log do ano de 2023.
- Após o arquivo ser criado com sucesso, exclua os arquivos de log originais de 2023 que você acabou de arquivar.
Requisitos
- O arquivo final deve se chamar exatamente
old_logs.tar.gz.
- O arquivo deve estar localizado no diretório
~/project/logs.
- Apenas arquivos de log com
2023 no nome devem ser arquivados e posteriormente removidos.
- O arquivo de log de 2024 (
app_2024-05-01.log) não deve ser incluído no arquivo e não deve ser excluído.
Exemplos
Antes de arquivar, seu diretório de logs contém:
~/project/logs/
├── app_2023-01-15.log
├── app_2024-05-01.log
└── db_2023-02-20.log
Após completar a tarefa de arquivamento, seu diretório de logs deve estar assim:
~/project/logs/
├── app_2024-05-01.log
└── old_logs.tar.gz
Ao executar ls no diretório ~/project/logs/, você deverá ver:
app_2024-05-01.log old_logs.tar.gz
Dicas
- Use o comando
tar para criar arquivos. As opções -czf são uma combinação poderosa: c (criar), z (compactar com gzip) e f (especificar nome do arquivo).
- Você pode usar um curinga (
*) para selecionar múltiplos arquivos que correspondam a um padrão. Por exemplo, *_2023-*.log corresponderá a todos os arquivos que terminam com .log e possuem _2023- no nome.
- O comando
rm é usado para remover (excluir) arquivos. Tenha cuidado ao usá-lo com curingas!