如何从shell获取Erlang的发行版本号?

前端之家收集整理的这篇文章主要介绍了如何从shell获取Erlang的发行版本号?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
许多程序使用以下命令返回其版本号:
$ program --version
program (platform info) v1.2.3

这对于脚本化程序的安装或维护是有用的,并且一些其他受控的自动化魔术从系统管理员&朋友。

问题

如何轻松获取Erlang(OTP)的版本号?

网络上

这里有一些不令人满意的解决方案([1]和其他教程/ Erlang文档):

模拟器

$ erl
1> erlang:system_info(otp_release).
"R13B03"

难以脚本。我没有找到一种方法来erl从shell提示符执行单个命令。

发布文件

$ cat /usr/lib/erlang/releases/RELEASES
[{release,"OTP  APN 181 01","R13B03","5.7.4",[{kernel,"2.13.4","/usr/lib/erlang/lib/kernel-2.13.4"},{stdlib,"1.16.4","/usr/lib/erlang/lib/stdlib-1.16.4"},{sasl,"2.1.8","/usr/lib/erlang/lib/sasl-2.1.8"}],permanent}].

解析天堂(带壳)。

另一种方法是检查安装路径,但不可移植(我的安装路径不包括版本)。

个人上下文:我写一个脚本在几台机器上安装与插件相同版本的RabbitMQ。一些插件对OTP版本的要求最低,这是这个问题的开始。

[1] http://forum.trapexit.org/viewtopic.php?p=42946

erl -eval 'erlang:display(erlang:system_info(otp_release)),halt().'  -noshell
原文链接:https://www.f2er.com/bash/391563.html

猜你在找的Bash相关文章