terça-feira, 9 de junho de 2020

Somar colunas

Somar o valor de todas colunas

[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[B]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1

Comando
awk -F '|' '{sum+=$5}END{print "Soma total: " sum}' file

caso queira ignorar algum valor adicine # na frente do numero

Somar apenas colunas que começam com a [A]

[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[B]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1

Comando
awk -F '|' '$1 ~ /[A]/ {sum += $5} END {print "[A] Soma total : " sum}' file

Somar as ABC

[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[B]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[C]   |   Conteúdo   |   00/00/0000   |   ?   |   1

Comandp
awk -F '|' '$1 ~ /[ABC]/ {sum += $5} END {print "[ABC] Soma total : " sum}' file

Somar duas colunas

[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[B]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[A]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[C]   |   Conteúdo   |   00/00/0000   |   ?   |   1
[D]   |   Contéudo   |   1

Comando
awk -F '|' '$1 ~ /[ABCD]/ {sum += $5+$3} END {print "[ABCD] Soma total : " sum}' file

OBS: perceba que no exemplo a coluna D é a terceira enquanto as demais colunas permanecem sendo a quinta


---

Somar apenas conteúdo de um arquivo

1
1
1
1
1

Comando
echo $(cut -f3 file | tr '\n' +)0 | bc

numerar linhas

Comando
awk '{print NR-1 "," $0}' file

Nenhum comentário:

Postar um comentário