/
usr
/
share
/
perl5
/
URI
/
file
/
/usr/share/perl5/URI/file
mkdir
upload
Name
Size
Mode
Actions
Base.pm
1485
0644
edit
dl
rm
FAT.pm
497
0644
edit
dl
rm
Mac.pm
2485
0644
edit
dl
rm
OS2.pm
561
0644
edit
dl
rm
QNX.pm
337
0644
edit
dl
rm
Unix.pm
1022
0644
edit
dl
rm
Win32.pm
1757
0644
edit
dl
rm
Edit:
/usr/share/perl5/URI/file/Unix.pm
(1022B)
package URI::file::Unix; use strict; use warnings; use parent 'URI::file::Base'; use URI::Escape qw(uri_unescape); our $VERSION = '5.10'; sub _file_extract_path { my($class, $path) = @_; # tidy path $path =~ s,//+,/,g; $path =~ s,(/\.)+/,/,g; $path = "./$path" if $path =~ m,^[^:/]+:,,; # look like "scheme:" return $path; } sub _file_is_absolute { my($class, $path) = @_; return $path =~ m,^/,; } sub file { my $class = shift; my $uri = shift; my @path; my $auth = $uri->authority; if (defined($auth)) { if (lc($auth) ne "localhost" && $auth ne "") { $auth = uri_unescape($auth); unless ($class->_file_is_localhost($auth)) { push(@path, "", "", $auth); } } } my @ps = $uri->path_segments; shift @ps if @path; push(@path, @ps); for (@path) { # Unix file/directory names are not allowed to contain '\0' or '/' return undef if /\0/; return undef if /\//; # should we really? } return join("/", @path); } 1;
Save
cmd:
run