![]() |
|
Problems? Is your data what you think it is? | |
PerlMonks |
Missing from File::Spec(?)by ddd (Acolyte) |
on Sep 14, 2000 at 23:08 UTC ( #32534=perlquestion: print w/replies, xml ) | Need Help?? |
ddd has asked for the wisdom of the Perl Monks concerning the following question:
After a recent project that used File::Spec, File::Find, and others
I'd like to add another section to tye's File::Spec review
('the good', 'the bad', and 'the ugly') ...
(Please forgive me for using unix paths in the following discussion) The Unexpected File::Spec->canonpath( $path ); does remove extra '/' and '/.' from paths, but it does not, however, fix paths like '/a/1/../2' into '/a/2'. To do that I had to resort to regexps something like $path =~ s(\.\./)()g - which introduces platform-specific code and defeats the purpose of using File::Spec in the first place. Q: What is the correct (x platform) method for removing 'dir/..' from paths? A note on my ignorance: None of the systems that I use perl on (all 5.005_003 or older) have documentation (or code) for either abs2rel() or rel2abs() in File::Spec, or File::Spec::Unix. Are these new in 5.6? Perhaps theses functions are part of the answer to my question.
All the best,
Back to
Seekers of Perl Wisdom
|
|