oracular (3) File::Spec::Link.3pm.gz

NAME
File::Spec::Link - Perl extension for reading and resolving symbolic links
SYNOPSIS
use File::Spec::Link; my $file = File::Spec::Link->linked($link); my $file = File::Spec::Link->resolve($link); my $dirname = File::Spec::Link->chopfile($file); my $newname = File::Spec::Link->relative_to_file($path, $link); my $realname = File::Spec::Link->full_resolve($file); my $realname = File::Spec::Link->resolve_path($file); my $realname = File::Spec::Link->resolve_all($file);
DESCRIPTION
"File::Spec::Link" is an extension to "File::Spec", adding methods for resolving symbolic links; it was created to implement "File::Copy::Link". linked($link) Returns the filename linked to by $link: by "readlink"ing $link, and resolving that path relative to the directory of $link. resolve($link) Returns the non-link ultimately linked to by $link, by repeatedly calling "linked". Returns "undef" if the link can not be resolved. chopfile($file) Returns the directory of $file, by splitting the path of $file and returning (the volumne and) directory parts. "relative_to_file($path, $file)" Returns the path of $path relative to the directory of file $file. If $path is absolute, just returns $path. resolve_all($file) Returns the filename of $file with all links in the path resolved, wihout using "Cwd". full_resolve($file) Returns the filename of $file with all links in the path resolved. This sub tries to use "Cwd::abs_path" via "->resolve_path". resolve_path($file) Returns the filename of $file with all links in the path resolved. This sub uses "Cwd::abs_path" and is independent of the rest of "File::Spec::Link". Object methods new([$path]) create new path object: stores path as a list "path" returns path as a string, using catpath "canonical" returns canonical path, using canonpath "vol" returns volume element of path, see File::Spec->splitpath "dir" returns directory element of path, as a string, see File::Spec->splitpath "dirs" return list of directory components in path, see File::Spec->splitdir "pop" remove last component of the path push($file) add a file component to the path, ignoring empty strings add($file) add a component to the path: treating "updir" as "pop", and ignoring "curdir" and empty strings split($path) populate a path object, using splitpath "chop" remove and return a file component from path, an empty string returns means this was root dir. relative($path) replace the path object with the supplied path, where the new path is relative to the path object "follow" follow the link, where the path object is a link "resolved" resolve the path object, by repeatedly following links "resolvedir" resolve the links at all component levels within the path object Other class methods canonpath($path) Wrapper round File::Spec::canonpath, fatal if empty input catdir(@dirs) Wrapper round File::Spec::catdir, returns "curdir" from empty list splitlast($path) Get component from $path (using "chop") and returns remaining path and compenent, as strings. [Not used] EXPORT None - all subs are methods for "File::Spec::Link".
SEE ALSO
File::Spec(3) File::Copy::Link(3)
AUTHOR
Robin Barker, <RMBarker@cpan.org>
COPYRIGHT AND LICENSE
Copyright 2003, 2005, 2006, 2007, 2011, 2014 by Robin Barker This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.