0

我需要找到我的 perl 库/库的位置,我该怎么做?类似于这给你的python的东西......

python -c "import sys; print sys.path"

谢谢

4

3 回答 3

2

已加载模块的物理位置在%INC散列中:

  • %INC

    哈希%INC包含通过 、 或 运算符包含的每个文件名dorequire条目use。键是您指定的文件名(模块名称转换为路径名),值是找到的文件的位置。操作员使用require此哈希来确定是否已包含特定文件。

    如果文件是通过挂钩加载的(例如,子例程引用,请参阅这些挂钩的说明),默认情况下会插入此挂钩%INC以代替文件名。但是请注意,钩子可能已%INC自行设置条目以提供一些更具体的信息。

在我的系统上演示了一个随机模块的用法:

$ perl -MFile::Slurp -e 'print $INC{"File/Slurp.pm"}'
/Users/miller/perl5/perlbrew/perls/perl-5.20.0/lib/site_perl/5.20.0/File/Slurp.pm
于 2014-09-23T04:57:22.597 回答
2

列出将查找模块的所有位置:perl -E 'say for @INC'

列出已从以下位置加载的所有实际文件模块:perl -E 'say for keys %INC'

于 2014-09-23T08:27:30.513 回答
1

打印@INC变量的内容:

perl -e 'print "@INC\n";'

@INC包含 Perl 将搜索以查找模块的所有路径。

于 2014-09-23T06:26:35.900 回答