http://qs1969.pair.com?node_id=168974

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

I'm using stat() to get the total size of the files in a given folder. I've been using something like this.
my $size = 0; opendir (FOO, "foo") or error_stuff(); foreach (readdir(FOO)) { $size += (stat("foo/$_"))[7] unless /^\.\.?$/; } closedir (FOO);
This seems like a lot of code to do a simple task. But if I use my $size = (stat("foo"))[7]; it returns 4096, but the total size of the files in that directory are 30981 bytes.

Is there an easier way to do this, or it this my best bet?

Thanks
Joshua

Edit kudra, 2002-05-26 Changed title