in reply to Unexpected behavior with "map"
Have you considered using a module designed for parsing paths?
use File::Basename; use Data::Dumper; my @oldlist = qw X /etc/passwd /etc/group /egg/drop /etc/shadow X; my @newlist = map {basename $_} @oldlist; print Dumper \@newlist;
outputs:
$VAR1 = [ 'passwd', 'group', 'drop', 'shadow' ];
|
|---|