Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?

Re: remove directory path

by prasadbabu (Prior)
on Mar 02, 2006 at 13:10 UTC ( #533872=note: print w/replies, xml ) Need Help??

in reply to remove directory path

You need to take a look at File::Basename

or simply with regex

$file = "/opt/local/bin/zap.exe"; $file =~ s|.*/||s; print $file; output: zap.exe

updated: As per frodo72 suggestion. Thanks frodo72


Replies are listed 'Best First'.
Re^2: remove directory path
by polettix (Vicar) on Mar 02, 2006 at 15:33 UTC
    The File::Basename approach is better IMHO - more readable, portable and tested.

    In the regex, you're bound to be in some Unix flavour; moreover, it misses files in the root directory, because of the "+". I'd reword it as:

    $file =~ s{.*/}{}s;
    but the better choice remains File::Basename.

    perl -ple'$_=reverse' <<<ti.xittelop@oivalf

    Don't fool yourself.
Re^2: remove directory path
by sen (Hermit) on Mar 02, 2006 at 13:48 UTC

    try this..

    $file = "/opt/local/bin/zap.exe"; print $file = (split(/\//, $file))[-1];
Re^2: remove directory path
by sen (Hermit) on Mar 02, 2006 at 13:47 UTC

    try this..

    $file = "/opt/local/bin/zap.exe"; $file = (split(/\//, $file))[-1]; print $file;

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://533872]
and a kettle whistles...

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (8)
As of 2017-03-30 07:42 GMT
Find Nodes?
    Voting Booth?
    Should Pluto Get Its Planethood Back?

    Results (355 votes). Check out past polls.