perl --version
打印所有这些:
This is perl 5, version 26, subversion 1 (v5.26.1) built for darwin-thread-multi-2level
Copyright 1987-2017, Larry Wall
Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.
Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl". If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.
我想要的是:
5.26.1
有没有现成的方法来实现这个功能,或者我需要编写自己的正则表达式来从详细输出中提取它?
4条答案
按热度按时间gj3fmq9x1#
变量$^V包含这些信息。你可以直接从Perl内部打印出来:
或者你可以在bash中得到它:
这两个版本都在我的系统上打印“v5.22.1”。
9cbw7uwe2#
svujldwt3#
除了
$^V
和$Config{version}
之外,还有$]
,它保存版本的数值。laawzig24#
在shell中,执行以下操作:
与公认的答案相比,这是一个更向后兼容的答案,因为它适用于从v5.6.0到v5.10.0的perl版本(而不是仅仅回到v5.10.0)。
来自https://perldoc.perl.org/perlvar#$%5EV:
“这个变量第一次出现在perl v5.6.0中...在perl v5.10.0之前,
$^V
被表示为v-string而不是version对象。”要以可移植方式将
$^V
转换为其字符串表示形式,请使用sprintf()
的"%vd"
转换,该转换适用于v字符串或版本对象: