/
usr
/
share
/
perl
/
5.38.2
/
/usr/share/perl/5.38.2
mkdir
upload
Name
Size
Mode
Actions
App/
-
0755
rm
Archive/
-
0755
rm
Attribute/
-
0755
rm
autodie/
-
0755
rm
B/
-
0755
rm
Carp/
-
0755
rm
Class/
-
0755
rm
Compress/
-
0755
rm
Config/
-
0755
rm
CPAN/
-
0755
rm
DBM_Filter/
-
0755
rm
Devel/
-
0755
rm
Digest/
-
0755
rm
Encode/
-
0755
rm
encoding/
-
0755
rm
Exporter/
-
0755
rm
ExtUtils/
-
0755
rm
File/
-
0755
rm
Filter/
-
0755
rm
Getopt/
-
0755
rm
HTTP/
-
0755
rm
I18N/
-
0755
rm
IO/
-
0755
rm
IPC/
-
0755
rm
JSON/
-
0755
rm
Locale/
-
0755
rm
Math/
-
0755
rm
Memoize/
-
0755
rm
Module/
-
0755
rm
Net/
-
0755
rm
overload/
-
0755
rm
Params/
-
0755
rm
Parse/
-
0755
rm
Perl/
-
0755
rm
PerlIO/
-
0755
rm
pod/
-
0755
rm
Pod/
-
0755
rm
Search/
-
0755
rm
TAP/
-
0755
rm
Term/
-
0755
rm
Test/
-
0755
rm
Test2/
-
0755
rm
Text/
-
0755
rm
Thread/
-
0755
rm
Tie/
-
0755
rm
Time/
-
0755
rm
Unicode/
-
0755
rm
unicore/
-
0755
rm
User/
-
0755
rm
version/
-
0755
rm
warnings/
-
0755
rm
AnyDBM_File.pm
2618
0644
edit
dl
rm
autodie.pm
12436
0644
edit
dl
rm
AutoLoader.pm
15797
0644
edit
dl
rm
AutoSplit.pm
19637
0644
edit
dl
rm
autouse.pm
4238
0644
edit
dl
rm
base.pm
10961
0644
edit
dl
rm
Benchmark.pm
31023
0644
edit
dl
rm
bigfloat.pm
21968
0644
edit
dl
rm
bigint.pm
23247
0644
edit
dl
rm
bignum.pm
28217
0644
edit
dl
rm
bigrat.pm
21134
0644
edit
dl
rm
blib.pm
2062
0644
edit
dl
rm
builtin.pm
10392
0644
edit
dl
rm
bytes.pm
3782
0644
edit
dl
rm
bytes_heavy.pl
758
0644
edit
dl
rm
Carp.pm
35994
0644
edit
dl
rm
charnames.pm
21049
0644
edit
dl
rm
constant.pm
14724
0644
edit
dl
rm
CORE.pod
3188
0644
edit
dl
rm
CPAN.pm
147971
0644
edit
dl
rm
DB.pm
18922
0644
edit
dl
rm
DBM_Filter.pm
14385
0644
edit
dl
rm
deprecate.pm
5036
0644
edit
dl
rm
diagnostics.pm
19334
0644
edit
dl
rm
Digest.pm
11225
0644
edit
dl
rm
DirHandle.pm
2085
0644
edit
dl
rm
Dumpvalue.pm
17668
0644
edit
dl
rm
dumpvar.pl
15555
0644
edit
dl
rm
English.pm
4761
0644
edit
dl
rm
Env.pm
5569
0644
edit
dl
rm
experimental.pm
8930
0644
edit
dl
rm
Exporter.pm
19212
0644
edit
dl
rm
Fatal.pm
59236
0644
edit
dl
rm
feature.pm
54597
0644
edit
dl
rm
fields.pm
9475
0644
edit
dl
rm
FileCache.pm
5549
0644
edit
dl
rm
FileHandle.pm
6805
0644
edit
dl
rm
filetest.pm
4003
0644
edit
dl
rm
FindBin.pm
4616
0644
edit
dl
rm
if.pm
3631
0644
edit
dl
rm
integer.pm
3254
0644
edit
dl
rm
Internals.pod
2575
0644
edit
dl
rm
less.pm
3204
0644
edit
dl
rm
locale.pm
4885
0644
edit
dl
rm
Memoize.pm
32586
0644
edit
dl
rm
meta_notation.pm
2069
0644
edit
dl
rm
NEXT.pm
18982
0644
edit
dl
rm
ok.pm
967
0644
edit
dl
rm
open.pm
8498
0644
edit
dl
rm
overload.pm
54723
0644
edit
dl
rm
overloading.pm
1808
0644
edit
dl
rm
parent.pm
2702
0644
edit
dl
rm
perl5db.pl
317570
0644
edit
dl
rm
perlfaq.pm
77
0644
edit
dl
rm
PerlIO.pm
14259
0644
edit
dl
rm
Safe.pm
25352
0644
edit
dl
rm
SelectSaver.pm
1076
0644
edit
dl
rm
SelfLoader.pm
17686
0644
edit
dl
rm
sigtrap.pm
8733
0644
edit
dl
rm
sort.pm
2992
0644
edit
dl
rm
stable.pm
4657
0644
edit
dl
rm
strict.pm
4783
0644
edit
dl
rm
subs.pm
945
0644
edit
dl
rm
Symbol.pm
4905
0644
edit
dl
rm
Test.pm
30042
0644
edit
dl
rm
Test2.pm
6393
0644
edit
dl
rm
Thread.pm
8289
0644
edit
dl
rm
UNIVERSAL.pm
6834
0644
edit
dl
rm
utf8.pm
10888
0644
edit
dl
rm
vars.pm
2458
0644
edit
dl
rm
version.pm
1976
0644
edit
dl
rm
version.pod
9832
0644
edit
dl
rm
vmsish.pm
4313
0644
edit
dl
rm
warnings.pm
57069
0644
edit
dl
rm
XSLoader.pm
11399
0644
edit
dl
rm
_charnames.pm
35679
0644
edit
dl
rm
Edit:
/usr/share/perl/5.38.2/FindBin.pm
(4616B)
# FindBin.pm # # Copyright (c) 1995 Graham Barr & Nick Ing-Simmons. All rights reserved. # This program is free software; you can redistribute it and/or modify it # under the same terms as Perl itself. =head1 NAME FindBin - Locate directory of original perl script =head1 SYNOPSIS use FindBin; use lib "$FindBin::Bin/../lib"; or use FindBin qw($Bin); use lib "$Bin/../lib"; =head1 DESCRIPTION Locates the full path to the script bin directory to allow the use of paths relative to the bin directory. This allows a user to setup a directory tree for some software with directories C<< <root>/bin >> and C<< <root>/lib >>, and then the above example will allow the use of modules in the lib directory without knowing where the software tree is installed. If perl is invoked using the B<-e> option or the perl script is read from C<STDIN> then FindBin sets both C<$Bin> and C<$RealBin> to the current directory. =head1 EXPORTABLE VARIABLES $Bin - path to bin directory from where script was invoked $Script - basename of script from which perl was invoked $RealBin - $Bin with all links resolved $RealScript - $Script with all links resolved =head1 KNOWN ISSUES If there are two modules using C<FindBin> from different directories under the same interpreter, this won't work. Since C<FindBin> uses a C<BEGIN> block, it'll be executed only once, and only the first caller will get it right. This is a problem under mod_perl and other persistent Perl environments, where you shouldn't use this module. Which also means that you should avoid using C<FindBin> in modules that you plan to put on CPAN. To make sure that C<FindBin> will work is to call the C<again> function: use FindBin; FindBin::again(); # or FindBin->again; In former versions of FindBin there was no C<again> function. The workaround was to force the C<BEGIN> block to be executed again: delete $INC{'FindBin.pm'}; require FindBin; =head1 AUTHORS FindBin is supported as part of the core perl distribution. Please submit bug reports at L<https://github.com/Perl/perl5/issues>. Graham Barr E<lt>F<gbarr@pobox.com>E<gt> Nick Ing-Simmons E<lt>F<nik@tiuk.ti.com>E<gt> =head1 COPYRIGHT Copyright (c) 1995 Graham Barr & Nick Ing-Simmons. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut package FindBin; use strict; use warnings; use Carp; require Exporter; use Cwd qw(getcwd cwd abs_path); use File::Basename; use File::Spec; our ($Bin, $Script, $RealBin, $RealScript, $Dir, $RealDir); our @EXPORT_OK = qw($Bin $Script $RealBin $RealScript $Dir $RealDir); our %EXPORT_TAGS = (ALL => [qw($Bin $Script $RealBin $RealScript $Dir $RealDir)]); our @ISA = qw(Exporter); our $VERSION = "1.53"; # needed for VMS-specific filename translation if( $^O eq 'VMS' ) { require VMS::Filespec; VMS::Filespec->import; } sub cwd2 { my $cwd = getcwd(); # getcwd might fail if it hasn't access to the current directory. # try harder. defined $cwd or $cwd = cwd(); $cwd; } sub init { *Dir = \$Bin; *RealDir = \$RealBin; if($0 eq '-e' || $0 eq '-') { # perl invoked with -e or script is on C<STDIN> $Script = $RealScript = $0; $Bin = $RealBin = cwd2(); $Bin = VMS::Filespec::unixify($Bin) if $^O eq 'VMS'; } else { my $script = $0; if ($^O eq 'VMS') { ($Bin,$Script) = VMS::Filespec::rmsexpand($0) =~ /(.*[\]>\/]+)(.*)/s; # C<use disk:[dev]/lib> isn't going to work, so unixify first ($Bin = VMS::Filespec::unixify($Bin)) =~ s/\/\z//; ($RealBin,$RealScript) = ($Bin,$Script); } else { croak("Cannot find current script '$0'") unless(-f $script); # Ensure $script contains the complete path in case we C<chdir> $script = File::Spec->catfile(cwd2(), $script) unless File::Spec->file_name_is_absolute($script); ($Script,$Bin) = fileparse($script); # Resolve $script if it is a link while(1) { my $linktext = readlink($script); ($RealScript,$RealBin) = fileparse($script); last unless defined $linktext; $script = (File::Spec->file_name_is_absolute($linktext)) ? $linktext : File::Spec->catfile($RealBin, $linktext); } # Get absolute paths to directories if ($Bin) { my $BinOld = $Bin; $Bin = abs_path($Bin); defined $Bin or $Bin = File::Spec->canonpath($BinOld); } $RealBin = abs_path($RealBin) if($RealBin); } } } BEGIN { init } *again = \&init; 1; # Keep require happy
Save
cmd:
run