Beleza, pessoal! Hoje vou compartilhar uma saga que tive com shell scripting, batizei de “shell f1” porque a ideia era fazer algo rápido e furioso, tipo corrida de Fórmula 1. 🏎️💨

Tudo começou quando precisei automatizar uma tarefa chata no trampo. Sabe como é, né? Aquelas coisas repetitivas que te fazem perder um tempão. Aí pensei: “Preciso de um script shell pra resolver isso!”.
Primeiro, sentei pra entender o que precisava fazer. Era basicamente pegar uns arquivos de log, filtrar umas informações específicas e gerar um relatório. Parecia simples no começo…
- Passo 1: Coletar os logs. Usei o bom e velho
find
pra achar todos os arquivos com a extensão certa dentro de um diretório específico. Tipo assim:
find /caminho/dos/logs -name ".log"
- Passo 2: Filtrar a informação. Aqui a brincadeira começou a ficar interessante. Precisava usar o
grep
pra achar as linhas que continham as palavras-chave que me interessavam. Fiz umas tentativas e erros até chegar no filtro certo. Uma dica: usem ogrep -i
pra ignorar maiúsculas e minúsculas, facilita muito!
grep -i "palavra-chave" *
- Passo 3: Formatar a saída. Queria que o relatório ficasse bonitinho, então usei o
awk
pra organizar as colunas e imprimir só o que importava. Confesso que apanhei um pouco doawk
, mas depois de ver uns tutoriais e exemplos na internet, comecei a pegar o jeito.
awk '{print $1, $3, $5}' *

- Passo 4: Gerar o relatório. Juntei tudo num script só, redirecionando a saída pra um arquivo texto. Usei o pra criar o arquivo e o pra adicionar informações no final.
./meu_* > *
Aí veio a parte mais legal: testar o script! No começo, claro, deu um monte de erro. Tive que debugar, consertar as aspas, verificar se os caminhos estavam certos… Mas depois de umas boas horas de sofrimento, consegui fazer o script rodar sem problemas. 🎉
Pra finalizar, adicionei uns comentários no script pra deixar tudo mais claro e fácil de entender. Também criei um arquivo README
com as instruções de uso. Afinal, não adianta nada ter um script funcionando se ninguém souber como usá-lo, né?
O que eu aprendi com o “shell f1”?
- Shell scripting é uma mão na roda pra automatizar tarefas.
grep
,awk
esed
são ferramentas poderosíssimas.- Comentários são seus amigos (e dos seus colegas!).
- Testar, testar e testar (e depois testar de novo!).
E aí, curtiram a minha saga? Se tiverem alguma dúvida ou sugestão, deixem um comentário! E se quiserem ver o script completo, me avisem que eu compartilho com vocês. Até a próxima!