Los módulos File::Basename y File::Spec permiten el manejo de nombres de fichero de una manera portable. Veamos por ejemplo la función catfile :
lhp@nereida:~/Lperl/src/perl_networking/ch2$ perl -de 0
DB<1> use File::Spec::Functions;
DB<2> $x = catfile('a', 'b', 'c')
DB<3> x $x
0 'a/b/c'
En un sistema windows $x contendría 'a\b\c'.
Para saber mas, lea con detalle la documentación
de los módulos File::Basename y File::Spec .
Usa para ello el comando man File::Basename o bien
perldoc File::Basename.
Sigue un ejemplo de uso de la función fileparse :
DB<1> use File::Basename
DB<2> @a = fileparse("/foo/bar/baz", qr/\.[^.]*/)
DB<3> x @a
0 'baz'
1 '/foo/bar/'
2 ''
DB<4> @a = fileparse("/foo/bar/baz.pm", qr/\.[^.]*/)
DB<5> x @a
0 'baz'
1 '/foo/bar/'
2 '.pm'
Casiano Rodríguez León
