use strict; use warnings; my $dev = qw/original1/; my $dev1 = qw/clinical1/; my $diff=0; # open (FOO, "samcmd a $dev 2>\&1 |" ) || die # "unable to open pipe... Broken? $!"; while () { if (/regular files|archdone files/) { local $, = "\n"; #s/^\w+(\s+)\w+(\s+)// && s/,//,; s/,//, print +(split)[2], $,; if (/^\d+/) { $diff -=$1; ##--## 62622-62535 } else { print "$_ does not start with digits.\n"; } } } print "Difference is: $diff\n"; #close (FOO) or warn "unable to close file $!"; __DATA__ regular files 62,622 597.488G 641547379187 archdone files 62,535 597.008G 641032761295