我想知道 IO :: Socket :: SSL 模块的位置,或者更具体地说, SSL.pm 所在的位置。我已经知道我已安装 IO :: Socket :: SSL ,因为use IO::Socket::SSL
有效。
答案 0 :(得分:6)
我总是使用这样的东西:
%> perl -MIO::Socket::SSL -e 'print $INC{"IO/Socket/SSL.pm"}';
如果模块未安装在perl可以获得的正确路径中,则会得到路径或错误。
如果您想查看该模块是否已安装:
%> perl -MIO::Socket::SSL -e 1
如果您没有收到任何错误,则会安装它。
有时查看已安装软件包的版本号非常重要:
%> perl -MIO::Socket::SSL -e 'print $IO::Socket::SSL::VERSION';
或者,如果您使用的是Windows,则必须使用双引号:
C:\> perl -MIO::Socket::SSL -e "print $IO::Socket::SSL::VERSION";
答案 1 :(得分:4)
这应该有效
perldoc -l 'IO::Socket::SSL'
或者cmd.exe
perldoc -l "IO::Socket::SSL"
-l
开关表示“显示模块的文件名”。我发现它显示了模块的完全限定路径,或者(如果适用)模块的外部POD,它与模块本身位于同一目录中。
答案 2 :(得分:3)
你可以这样做:
perl -E'use IO::Socket::SSL; say $INC{"IO/Socket/SSL.pm"};'
但根据经验,大多数模块通常位于ubuntu上的/ usr / share / perl5中。
答案 3 :(得分:1)
pmtools package提供了各种有用的命令行工具,用于查找软件包的安装位置(pmpath
),它所在的版本(pmvers
)等等