One-liner Perl:
perl -ne '$c += $_ for m/(\d+)(?!=:)/g; }{ print $c' in.txt > out.txt
Formulário de script em Perl:
#!/usr/bin/perl
use warnings;
use strict;
my $infile = 'in.txt';
my $outfile = 'out.txt';
open my $fh, '<', $infile
or die $!;
my $count = 0;
while (my $line = <$fh>){
my @line_count = $line =~ m/(\d+)(?!=:)/g;
$count += $_ for @line_count;
}
close $fh or die $!;
open my $wfh, '>', $outfile
or die $!;
print $wfh $count;
close $wfh or die $!;
Breve explicação: Colete todas as instâncias de um ou mais inteiros consecutivos por linha, desde que não sejam seguidos por um :
anexado. Em seguida, basta atualizar uma variável adicionando esses novos valores a ela.