/
usr
/
share
/
perl5
/
URI
/
file
/
/usr/share/perl5/URI/file
mkdir
upload
Name
Size
Mode
Actions
Base.pm
1501
0644
edit
dl
rm
FAT.pm
523
0644
edit
dl
rm
Mac.pm
2511
0644
edit
dl
rm
OS2.pm
587
0644
edit
dl
rm
QNX.pm
363
0644
edit
dl
rm
Unix.pm
1048
0644
edit
dl
rm
Win32.pm
1783
0644
edit
dl
rm
Edit:
/usr/share/perl5/URI/file/Unix.pm
(1048B)
package URI::file::Unix; use strict; use warnings; use parent 'URI::file::Base'; use URI::Escape qw(uri_unescape); our $VERSION = '1.73'; $VERSION = eval $VERSION; 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