SYNOPSIS
Get the size for directory /etc/ with the block size of 1024 while following symbolic links:
my $obj = File::Size->new(
dir => '/etc/',
blocksize => 1024,
followsymlinks => 1,
humanreadable => 1
);
print $obj->getsize(), "n";
File::Size is used to get the size of files and directories.
There are 6 methods you can use:
new
There are 4 optional hash values for the new() method:
dir
The directory you want the module to get the size for it. Default is current working directory.
blocksize
The blocksize for the output of getsize() method. default is 1 (output in bytes).
followsymlinks
If you want to follow symlinks for directories and files, use this option. The default is not to follow symlinks.
humanreadable
If you want output size in human readable format (e.g. 2048 -> 2.0K), set this option to 1.
You don't have to specify any of those options, which means this is okay:
print File::Size->new()->getsize(), " bytesn";
This is okay too:
print File::Size->new()->setdir( '/etc/' )->setblocksize( 1024**2 )->getsize(), " MBn";
setdir
Used to set (or get - if called without parameters) the directory. Example: $obj->setdir( '/etc/' );
setblocksize
Used to set (or get - if called without parameters) the block size. Example: $obj->setblocksize( 1024 );
setfollowsymlinks
Used to set if you want to follow symbolic links or not. If called without parmeters, returns the current state. Example: $obj->setfollowsymlinks( 1 );
sethumanreadable
Used to set (or get - if called without parameters) if you want human-readable output sizes. Example: $obj->sethumanreadable( 1 );
getsize
Used to calculate the total size of the directory. Prints output according to the block size you did or didn't specify.
Product's homepage
Requirements:
· Perl