samwilson/mwcli

MediaWiki安装的管理命令行界面。


README

MediaWiki维基的命令行客户端。

CI

关于

MediaWiki CLI(简称mwcli)是一个多语言跨平台的PHP命令行工具,用于与MediaWiki安装交互,执行上传、下载文件和导出页面等任务。

它旨在操作多个维基,这些维基的配置存储在config.yml文件中。维基通常位于运行wmcli的计算机之外,但也可以是本地(即可以在服务器上执行一些任务)。可以直接编辑配置文件,或通过sites:addsites:modify等命令进行编辑。

安装

  1. 克隆仓库

    git clone https://github.com/samwilson/mwcli
    
  2. 安装依赖项

    cd mwcli
    composer install --no-dev
    
  3. 可选地将mwcli添加到您的路径

    echo 'export PATH=$PATH:'$(pwd)/bin >> ~/.profile
    

使用方法

sites:add

将新网站添加到配置文件。

sites:add [-c|--config [CONFIG]] [--url URL]
  • --config -c — 要使用的Yaml配置文件路径。默认:'[CWD]/config.yml'
  • --url — 维基的URL。可以是任何页面或甚至api.php。 必需。

sites:info

获取维基的一般信息。

sites:info [-c|--config [CONFIG]] [-w|--wiki WIKI]
  • --config -c — 要使用的Yaml配置文件路径。默认:'[CWD]/config.yml'
  • --wiki -w — 要使用的mwcli维基名称。使用sites:list列出所有。 必需。

sites:list

列出所有配置的网站。

sites:list [-c|--config [CONFIG]]
  • --config -c — 要使用的Yaml配置文件路径。默认:'[CWD]/config.yml'

sites:remove

从配置文件中删除网站。

sites:remove [-c|--config [CONFIG]] [-w|--wiki WIKI]
  • --config -c — 要使用的Yaml配置文件路径。默认:'[CWD]/config.yml'
  • --wiki -w — 要使用的mwcli维基名称。使用sites:list列出所有。 必需。

export:contribs

导出用户的贡献。

export:contribs [-c|--config [CONFIG]] [-w|--wiki WIKI] [-u|--user USER] [-d|--dest DEST] [-o|--only-author]
  • --config -c — 要使用的Yaml配置文件路径。默认:'[CWD]/config.yml'
  • --wiki -w — 要使用的mwcli维基名称。使用sites:list列出所有。 必需。
  • --user -u — 导出此用户名的贡献。 必需。
  • --dest -d — 导出文件的目标目录。默认:'[CWD]/contribs'
  • --only-author -o — 仅导出给定用户是页面原始作者的情况。

export:wikitext

将维基页面导出为文本文件。

export:wikitext [-c|--config [CONFIG]] [-w|--wiki WIKI] [-d|--dest DEST] [-e|--ext EXT]
  • --config -c — 要使用的Yaml配置文件路径。默认:'[CWD]/config.yml'
  • --wiki -w — 要使用的mwcli维基名称。使用sites:list列出所有。 必需。
  • --dest -d — 导出文件的目标目录。默认:'[CWD]/wikitext'
  • --ext -e — 要用于导出文件的文件扩展名。默认:'txt'

extension:install

将扩展安装到本地维基。需要在网站的配置中设置'install_path'。

extension:install [-c|--config [CONFIG]] [-w|--wiki WIKI] [-g|--git] [-u|--gituser GITUSER] [--] <extension-name>
  • --config -c — 要使用的Yaml配置文件路径。默认:'[CWD]/config.yml'
  • --wiki -w — 要使用的mwcli维基名称。使用sites:list列出所有。 必需。
  • --git -g — 使用Git安装扩展,而不是默认的tarball方法。
  • --gituser -u — Git中使用的用户名。意味着--git 必需。
  • <extension-name> 扩展的名称(驼峰命名,用下划线表示空格)。

extension:outdated

显示已安装的扩展列表,这些扩展有可用的更新,包括其最新版本。

extension:outdated [-c|--config [CONFIG]] [-w|--wiki WIKI]
  • --config -c — 要使用的Yaml配置文件路径。默认:'[CWD]/config.yml'
  • --wiki -w — 要使用的mwcli维基名称。使用sites:list列出所有。 必需。

upload:files

将本地文件上传到维基。

upload:files [-c|--config [CONFIG]] [-w|--wiki WIKI] [-m|--comment COMMENT] [--] [<files>...]
  • --config -c — 要使用的Yaml配置文件路径。默认:'[CWD]/config.yml'
  • --wiki -w — 要使用的mwcli维基名称。使用sites:list列出所有。 必需。
  • --comment -m — 修订注释。 必需。
  • <files> 要上传的文件名。

upload:pages

将本地文本文件上传为维基页面。

upload:pages [-c|--config [CONFIG]] [-w|--wiki WIKI] [-m|--comment [COMMENT]] [-t|--watch] [--] <pages-dir>
  • --config -c — 要使用的Yaml配置文件路径。默认:'[CWD]/config.yml'
  • --wiki -w — 要使用的mwcli维基名称。使用sites:list列出所有。 必需。
  • --comment -m — 修订注释。
  • --watch -t — 监视文件并在任何更改时上传。 可选。
  • <pages-dir> 从中导入维基页面的目录。

许可证:MIT

版权所有 2019 Sam Wilson。

特此授予任何获得此软件及其相关文档文件(“软件”)副本的任何人免费使用该软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本,并允许获得软件的个人使用软件,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

软件按“原样”提供,不提供任何形式的保证,无论是明示的、暗示的,包括但不限于对适销性、特定用途的适用性和非侵权的保证。在任何情况下,作者或版权所有者不对任何索赔、损害或其他责任负责,无论这些责任是因合同行为、侵权或其他原因引起的,无论这些责任是由于、源于或与软件的使用或其他方面有关。