awk — Processamento de Texto Orientado a Dados
📌 O que é o awk
O awk é uma linguagem e ferramenta do Linux voltada para processamento de texto estruturado, especialmente quando os dados estão organizados em linhas e colunas.
Ele é amplamente utilizado para: - Extrair campos - Filtrar dados - Calcular valores - Gerar relatórios - Pós-processar resultados de simulações
🎯 Quando usar o awk
Use o awk quando você precisar: - Trabalhar com arquivos tabulares (CSV, TSV, .dat) - Processar logs numéricos - Extrair colunas específicas - Fazer cálculos em fluxo - Criar pequenos relatórios sem usar Python ou R
O awk segue o modelo padrão { ação }, onde para cada linha o padão é testado e sendo verdadeiro é executada a ação.
Para entender melhor vamos usar o arquivo abaixo como exemplo, onde iremos executar o awk:
S1 22.5 45
S2 24.1 50
S3 21.9 42
S4 25.3 55
S5 23.8 48
Dado que o arquivo é separado por espaços (campos da linha), o comando “print” servirá para exibir algo na tela. A variáveil $0 imprime todo o conteúdo, ou cada coluna do texto:
awk '{print $0}' awk.txtPodemos imprimir a primeira coluna de cada linha.
awk '{print $1}' awk.txtOu podemos imprimir mais de 1 coluna.
awk '{print $1,$3}' awk.txtPodemos usar texto também.
awk '{print "Sensor " $1 " marcou temp de " $2 "C e umidade " $3 }' awk.txtE caso o separador de campos (FS - Field Separator) não seja o espaço, podemos alterar o com a opção -F. Se o arquivo estivesse como segue:
S1;22.5;45
S2;24.1;50
S3;21.9;42
S4;25.3;55
S5;23.8;48
awk -F ';' '{print $1,$3}' awk.txt