http://www.perlmonks.org?node_id=917244

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

following program can list the directory all files along with their size. Now i was trying this info to sql table in manner such as file name | size... while doing this facing many issues. any idea how to do?
$DIR = "/home/rajesh"; @dirlist = `ls -l $DIR | tr -s " " " "| cut -d " " -f5,9`; foreach (@dirlist) { print "$_ \n"; }

Replies are listed 'Best First'.
Re: sql entry of file name n size
by Corion (Patriarch) on Jul 28, 2011 at 11:00 UTC

    First, take a look at opendir and readdir to eliminate that ls | tr | cut pipe. Then, please take the time to tell us what you tried and what problems you encountered. That helps us to help you better.

    Maybe you want to interface to a database and store the information? Then DBI is what you need.

Re: sql entry of file name n size
by linuxer (Curate) on Jul 29, 2011 at 20:08 UTC

    Just a quick thought in addition to Corion's answer: Once you have read the directory and its entries, you maybe want to have a look at the File::Spec module to create the file paths and the -s operator to determine the file sizes.