如何将特定 MediaWiki 安装的版本打印到终端

如何将特定 MediaWiki 安装的版本打印到终端

我有一个 LAMP 环境,/var/www/html/x其中有一个 MediaWiki 网站。我还有几个 MediaWiki 网站,但我想将其中x一个的版本打印到终端。

我需要这样做,这样我才能在手动更新 MediaWiki 之前知道最后一个版本是什么。

在该目录中,有一个RELEASE-NOTES-1.32以文本命名的文件:

== MediaWiki 1.32 ==

===自MediaWiki 1.32.0-rc.2以来的变化===

更多_文本............

也许我应该只打印第 3 行,awk 'NR>3' /var/www/html/x/RELEASE-NOTES-*但也许有更好的方法来了解给定 MediaWiki 安装的完整版本。

进行此输出的最佳、最稳定的方式是什么?

答案1

如果 wiki 已启动,最可靠的方法就是直接询问(通过generatorwiki 的属性)站点信息API,例如) - 对其进行的更改受弃用政策的约束,而您依赖的任何内部结构可能会在没有警告的情况下发生更改。

如果这不是一个选项,您可以尝试解析$wgVersionfrom的值includes/DefaultSettings.php。例如

ack '\$'"wgVersion\s*=\s*'([\w\d.-]+)';" --output='$1' mediawiki/includes/DefaultSettings.php

如果您始终使用正确的版本并且只关心主要版本,那么检查发行说明也很有效。

答案2

你可以运行:

php maintenance/version.php
MediaWiki version: 1.35.6 LTS (built: 15:57, 1 August 2023)

如果maintenance/version.php不存在,您可以添加它:

wget https://raw.githubusercontent.com/wikimedia/mediawiki/master/maintenance/version.php -O maintenance/version.php

相关内容