我有一个 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 已启动,最可靠的方法就是直接询问(通过generator
wiki 的属性)站点信息API,例如) - 对其进行的更改受弃用政策的约束,而您依赖的任何内部结构可能会在没有警告的情况下发生更改。
如果这不是一个选项,您可以尝试解析$wgVersion
from的值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