in reply to Re: extract file name from a dynamic path
in thread extract file name from a dynamic path

While writing my last CUFP I found a warning about basename in File::Basename:

This function is provided for compatibility with the Unix shell command basename(1). It does NOT always return the file name portion of a path as you might expect. To be safe, if you want the file name portion of a path use fileparse().

I'd like to see an example of this, since I can't figure out what can be wrong with basename.

Replies are listed 'Best First'.
Re^3: extract file name from a dynamic path
by Anonymous Monk on Sep 07, 2008 at 06:12 UTC
    Just keep reading, it says
    C<basename()> returns the last level of a filepath even if the last level is clearly directory. In effect, it is acting like C<pop()> for paths. This differs from C<fileparse()>'s behaviour. # Both return "bar" basename("/foo/bar"); basename("/foo/bar/");

      I was blind when I read that, thanks :)