Dirk80 has asked for the wisdom of the Perl Monks concerning the following question:
Hello monks,
my input is a directory. This directory contains files and directories. I want to print out all files and directories. I do NOT want to visit subdirectories.
Here you can see my script:
#!/usr/bin/perl use strict; use warnings; opendir( DIR, "D:/test_dir"); my @file_list = readdir(DIR); closedir(DIR); print "Decision whether it is a file or a directory:\n"; foreach ( @file_list ) { if( (-d $_) ) { print "directory: " . $_ . "\n"; } if( (-f $_) ) { print "file: " . $_ . "\n"; } } print "\n\n"; print "Just print everything:\n"; foreach ( @file_list ) { print $_ . "\n"; }
And here the result of the script:
Decision whether it is a file or a directory: directory: . directory: .. Just print everything: . .. abc appl asdf Copy of ignore.txt GpSw.chk ignore.txt vxos
If I just print out everything it is working. But I want to know which of the items found in the root directory is a file and which one is a directory. Why isn't it working?
Thank you very much
Greetings
Dirk
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: readdir and recognizing difference between files and directories
by tirwhan (Abbot) on Apr 07, 2010 at 15:07 UTC | |
|
Re: readdir and recognizing difference between files and directories
by moritz (Cardinal) on Apr 07, 2010 at 15:08 UTC | |
|
Re: readdir and recognizing difference between files and directories
by repellent (Priest) on Apr 11, 2010 at 07:42 UTC | |
|
Re: readdir and recognizing difference between files and directories
by kennethk (Abbot) on Apr 07, 2010 at 15:12 UTC |