flieckster has asked for the wisdom of the Perl Monks concerning the following question:
to push all the arrays into one sum, but its adding up the total rows of the txt doc, not the sum total of the file counts. how do add the totals to one array and save it so it only prints out once after the loop?push (@total, $fileslistcount); $total = @total;)
chdir($desktop_dir) or mail ($to = $dllist, $from = $dllist, $subject= + "ERROR $desktop_dir $!", $body ="ERROR $desktop_dir $!" ); (@listofdir) = glob "*txt"; foreach my $file (@listofdir){ chdir($desktop_dir) or mail ($to = $dllist, $from = $dllist, $subject= + "ERROR $desktop_dir $!", $body ="ERROR $desktop_dir $!" ); open(my $fh, '<:encoding(UTF-8)', $file)or mail ($to = $dllist, $from += $dllist, $subject= "error opening $file $!", $body ="ERROR opening + to $file $!" ); open FILE, ">> $mastercount" or mail ($to = $dllist, $from = $dllist, + $subject= "ERROR opening $mastercount", $body ="ERROR opening $mast +ercount" ); while (my $row = <$fh>) {#2 chomp $row; foreach ($row) { chdir ($row)or mail ($to = $dllist, $from = $dllist, $subject= + "error opening $row", $body ="ERROR opening to $row" ); if ( -e "Thumbs.db") { unlink ("Thumbs.db") or print "thumbs.db $!\n"; }; (@fileslist) = glob "*{jpg,gif,psd,png,tif,tiff}"; my $fileslistcount = @fileslist; push (@total, $fileslistcount); $total = @total; if ($fileslistcount > 0){ print "total files in $row:$fileslistcount\n"; } else { # print "not enought files to count\n"; } } } print "total files in $total\n"; }; close FILE;
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: adding to an array from foreach loop
by poj (Abbot) on Jan 10, 2018 at 21:43 UTC | |
by flieckster (Scribe) on Jan 10, 2018 at 21:54 UTC | |
Re: adding to an array from foreach loop
by Laurent_R (Canon) on Jan 11, 2018 at 00:10 UTC |