Estou tentando resumir uma tabela de dados que muda todos os dias. Já sumarizei a tabela para exibir apenas linhas com entradas maiores que 30.
No entanto, em alguns dias, não há entradas acima de 30 na tabela original. Quando isso acontece, não preciso de toda a seção vazia no resumo. Como faço para remover todo o cabeçalho dessas seções?
Idealmente, se não houver entradas em todas as 5 seções, não deverá haver nenhuma linha impressa (ou apenas uma string que diga: "Nenhuma: não há entrada maior que 30" como eu estava tentando fazer)
Exemplo de uma tabela resumida com 5 seções, summarised_output.txt:
=========================================================================================================
Month: Jun
Counter Name 06/04 18:00 06/04 17:00 06/04 16:00 06/04 15:00
=========================================================================================================
SYS.SYS.SYS.SYS.SYS.SYS. : 45 45 45 45
SYS.SYS.SYS.SYS.SYS.SYS. : 45 45 45 45
=========================================================================================================
Month: Jun
Counter Name 06/05 14:00 06/05 13:00 06/05 12:00 06/05 11:00
=========================================================================================================
SYS.SYS.SYS.SYS.SYS.SYS. : 45 45 45 45
SYS.SYS.SYS.SYS.SYS.SYS. : 45 45 45 45
=========================================================================================================
Month: Jun
Counter Name 06/05 10:00 06/05 09:00 06/05 08:00 06/05 07:00
=========================================================================================================
=========================================================================================================
Month: Jun
Counter Name 06/05 06:00 06/05 05:00 06/05 04:00 06/05 03:00
=========================================================================================================
SYS.SYS.SYS.SYS.SYS.SYS. : 45 45 45 45
SYS.SYS.SYS.SYS.SYS.SYS. : 45 45 45 45
=========================================================================================================
Month: Jun
Counter Name 06/04 18:00 06/04 17:00 06/04 16:00 06/04 15:00
=========================================================================================================
SYS.SYS.SYS.SYS.SYS.SYS. : 45 45 45 45
SYS.SYS.SYS.SYS.SYS.SYS. : 45 45 45 45
=========================================================================================================
Como você pode ver, a terceira seção está vazia porque não há entrada no arquivo original_output.txt maior que 30. Mas o cabeçalho ainda está lá.
Meu código de resumo (trabalhado):
awk '$1=="Month:"||$1==""||$1=="Counter"||(index($1, "=")!=0)||$3>=30|| $4>=30 || $5>=30||$6>=30' original_output.txt>>summarised_output.txt
Minha tentativa de excluir o cabeçalho (não funciona):
touch summarised_output_temp.txt
awk '{if ($1=="Month:"||$1==""||$1=="Counter"||(index($1, "=")!=0)||$3>=30|| $4>=30 || $5>=30||$6>=30) print $0}' original_output.txt >> summarised_output_temp.txt
if (((wc -l < summarised_output_temp.txt)==42))
then
echo "None: there is no entry larger than 30" >> summarised_output.txt
else
cat output_7_temp.txt>>summarised_output.txt
fi
O erro recebido pela tentativa:
line 3: ((: (wc -l output_7_temp.txt | awk {print $1})==42: syntax error: invalid arithmetic operator (error token is ".txt | awk {print $1})==42")