Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"

Problem in displaying files

by Anonymous Monk
on Dec 08, 2012 at 16:19 UTC ( #1007903=perlquestion: print w/replies, xml ) Need Help??
Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

Hello Monks,
I wrote a simple script to display a list of files in a directory:-

opendir(DIR, $dirname); @FILES= readdir(DIR); foreach $FILE (@FILES){ print $FILE."\n"; } closedir DIR;
The files in the directory are f1 f2 and g3. But I'm getting an output as:-
What are the dots(. and ..) in the beginning,this is becoming a problem when I want to open files from a directory and perform manipulations on them as the . and .. files cannot be opened.

Replies are listed 'Best First'.
Re: Problem in displaying files
by moritz (Cardinal) on Dec 08, 2012 at 16:23 UTC

      Thank you, that solved my problem.

Re: Problem in displaying files
by eyepopslikeamosquito (Chancellor) on Dec 08, 2012 at 22:28 UTC

    I normally use grep for this:

    @files = grep { $_ ne '.' && $_ ne '..' } readdir DIR;

Re: Problem in displaying files
by Vijay81 (Acolyte) on Dec 08, 2012 at 17:51 UTC
    you can also try this logic :
    while($file = readdir($dh)) { next if $file eq '.'; next if $file eq '..'; }

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://1007903]
Approved by moritz
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (2)
As of 2018-07-19 21:31 GMT
Find Nodes?
    Voting Booth?
    It has been suggested to rename Perl 6 in order to boost its marketing potential. Which name would you prefer?

    Results (420 votes). Check out past polls.