Como somar todos os números contidos num arquivo texto

Publicado por Fábio Berbert de Paula em 12/06/2017

[ Hits: 8.407 ]

Blog: https://fabio.automatizando.dev

 


Como somar todos os números contidos num arquivo texto



Dado um arquivo texto com um número por linha, quero como resultado a soma de cada linha.

Conteúdo do arquivo:

65
43
58
48
23
5
24
10
41
93
86
20
70
30
94
90
96
35
34
71
18
61
87
8
32
37
99
45
13
44

Para somar os números usaremos os comandos paste e bc:

paste -sd+ arquivo | bc
1480

Onde:
  • -s significa processar o arquivo serialmente
  • -d+ significa adicionar o delimitador "+" entre cada uma das linhas
  • bc é nossa calculadora em modo texto

Para maiores informações, consulte:

man paste
$ man bc


Outras dicas deste autor

Erro: user in plugdev group; are your udev rules wrong? [Resolvido]

Belo Horizonte é sede de amplo debate sobre conhecimento livre

Como checar a temperatura do processador via linha de comando

Escolhendo o modo de inicialização do Netscape

Limite de banda (bandwidth) nos comandos scp e rsync

Leitura recomendada

Conhecendo o printf

Pacman colorido no Arch Linux

Aulas Shell Script do zero - Completo

Desligar o PC após concluir download (Chrome e Chromium)

Executando uma música na partição do Windows pelo Shell

  

Comentários
[1] Comentário enviado por SMarcell em 13/06/2017 - 14:01h

Contribuindo com a dica.

# Com o Sed (não é lá muito elegante... rsrsrs)

$ sed ':a;N;$!ba;s/\n/+/g' arquivo | bc
1480

# AWK

$ awk '{ soma += $0 } END { print soma }' arquivo
1480



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts