当前位置:  开发笔记 > 编程语言 > 正文

如何获取已安装的Perl模块的版本和位置?

如何解决《如何获取已安装的Perl模块的版本和位置?》经验,为你挑选了2个好方法。

有没有一种智能方法可以检测系统中是否安装了某个Perl模块?我的旧sutpid方法是编写一个Perl脚本,其中我唯一要做的就是使用该模块.如果我运行检测脚本时没有任何结果,那么我知道模块已经安装,但我仍然不知道哪个版本以及模块的安装位置.

提前致谢.



1> DMI..:

就像是:

perl -MModule -e 'print "$Module::VERSION\n"' 2>/dev/null || echo "Not installed"

会给你一个给定模块的版本,或者告诉你它没有安装.用法如下:

perl -MXML::Parser -e 'print "$XML::Parser::VERSION\n"' 2>/dev/null || echo "Not installed"

要查找模块路径,您可以检查@INC以查找可能的位置,或者您也可以查看perlwhich.还有pmpath从pmtools.


如果您正在使用pmtools,那么[pminst](http://search.cpan.org/~mlfisher/pmtools/pminst)会显示是否已安装模块,以及[pmvers](http://search.cpan.org/~mlfisher/pmtools/pmvers)显示安装了哪个版本.(Debian/Ubuntu上的'apt-get install pmtools')

2> hdp..:

我所知道的最短的事情不涉及脚本或shell别名:

$ perl -MFoo::Bar\ 99
Foo::Bar version 99 required--this is only version 1.234.

(或者@INC如果没有安装则不通常的消息)

对于好奇,这是一样的perl -e 'use Foo::Bar 99'.

推荐阅读
惬听风吟jyy_802
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有