首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何知道在哪里安装了Perl模块?

问我如何知道在哪里安装了Perl模块?
EN

Stack Overflow用户
提问于 2013-07-05 07:56:44
回答 4查看 1.8K关注 0票数 3

我想知道IO::Socket::SSL模块,或者更具体地说,文件SSL.pm位于哪里。我已经知道我已经安装了IO::Socket::SSL,因为use IO::Socket::SSL可以工作。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-07-05 09:39:12

我总是用这样的东西:

代码语言:javascript
复制
%> perl -MIO::Socket::SSL -e 'print $INC{"IO/Socket/SSL.pm"}';

如果模块没有安装在perl可以获得的正确路径中,则会得到路径或错误。

如果您想查看是否安装了该模块:

代码语言:javascript
复制
%> perl -MIO::Socket::SSL -e 1

如果您没有发现任何错误,就会安装它。

有时,查看已安装包的版本号很重要:

代码语言:javascript
复制
%> perl -MIO::Socket::SSL -e 'print $IO::Socket::SSL::VERSION';

或者,如果您正在使用Windows,则必须使用双引号:

代码语言:javascript
复制
C:\> perl -MIO::Socket::SSL -e "print $IO::Socket::SSL::VERSION";
票数 6
EN

Stack Overflow用户

发布于 2013-07-05 08:37:08

这应该能行

代码语言:javascript
复制
perldoc -l 'IO::Socket::SSL'

或者是在cmd.exe中

代码语言:javascript
复制
perldoc -l "IO::Socket::SSL"

-l开关的意思是“显示模块的文件名”。我发现它显示了一个模块的完全限定路径,或者(如果适用的话)到模块外部POD的完全限定路径,它与模块本身位于同一个目录中。

票数 4
EN

Stack Overflow用户

发布于 2013-07-05 08:12:59

你可以:

perl -E'use IO::Socket::SSL; say $INC{"IO/Socket/SSL.pm"};'

但这是一个经验法则--大多数模块通常在ubuntu上的/usr/share/perl5 5中。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17483868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档