Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re^3: Perl stricter than my OS regarding file/dir names

by Corion (Patriarch)
on Feb 15, 2006 at 20:23 UTC ( [id://530511]=note: print w/replies, xml ) Need Help??


in reply to Re^2: Perl stricter than my OS regarding file/dir names
in thread Perl stricter than my OS regarding file/dir names

You aren't telling us if the directory exists or not. Perl only gives you a helpfull warning, just in case you are trying to stat a file/directory with a newline in it - which would be a common programming error.

If you want to avoid the warning, just use

{ no warnings 'newline'; next if -d "$dir/$current_filename"; };

Replies are listed 'Best First'.
Re^4: Perl stricter than my OS regarding file/dir names
by revdiablo (Prior) on Feb 15, 2006 at 21:13 UTC

    A bare block is a loop construct, so that next won't propagate out. Quick demonstration:

    $ perl -le 'for (1..10) { { next if 1 }; print }' 1 2 3 4 5 6 7 8 9 10
Re^4: Perl stricter than my OS regarding file/dir names
by jffry (Hermit) on Feb 15, 2006 at 21:20 UTC
    Not sure why the existence of the directory would matter. Most of the time, it doesn't exist.
    user@host:/home # perl -w print "OK" if -d 'I_swear_this_file_aint_here'; print "See, I told you.\n" <CTRL+D> See, I told you. user@host:/home
    I see no special output if the tested for file doesn't exist. It just silently fails.

    But...

    Thanks for the warnings info! That looks to be what I need, I'll bet.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://530511]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others browsing the Monastery: (5)
As of 2024-04-18 07:43 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found