http://qs321.pair.com?node_id=439031

drock has asked for the wisdom of the Perl Monks concerning the following question:

WITH the $diff code it is NOT subtracting the two numbers which is what I need. I think the problem is $_ contains data from the original app command which is regular files 62,622 597.488G 641547379187 archdone files 62,535 597.008G 641032761295 and so I am saying subtract what is in field 1 , well field 1 is empty, but why???? finally, I took away the + from the print and I had some errors, why is the + infront of the split needed in Perl? thank you, derek
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 (<FOO>) { if (/regular files|archdone files/) { local $, = "\n"; #s/^\w+(\s+)\w+(\s+)// && s/,//,; s/,//, print +(split)[2], $,; if (/^\d+/) { diff -=$1; ##--## 62622-62535 } } } 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