alex-kalanis/kw_clipr

命令行处理器

v6.0.0 2024-04-02 19:05 UTC

This package is auto-updated.

Last update: 2024-10-02 20:35:44 UTC


README

Build Status Scrutinizer Code Quality Latest Stable Version Minimum PHP Version Downloads License Code Coverage

命令行处理器

基本框架,用于从CLI运行脚本,并以更美观的包运行。它从预定义的源调用任务并允许它们运行。基于django cli和private CliC。您可以将其用作运行自己的脚本的基座,如常规检查或繁琐任务。所有这些都可以通过简化的CLI输出写入。所有这些都可以通过彩色显示,并可以从Web界面、*nix或Windows CLI运行。额外的是,您将获得一个表格引擎,它以Markdown语法创建输出。

命令行查询简单: clipr task --rest-of-params -t here。它使用kw_input来确定哪些参数传入。因此,经过一些调整,您也可以将常规文件传递给任务以进行处理。

任务返回Unix代码,Clipr将它们传递回调用者。有关其描述,请参阅IStatuses接口。

PHP安装

直接使用

在目标机器上安装并设置PHP。然后下载此项目,并按照以下步骤填充适合您需求的任务。

1.) 将clipr下载到某个位置/通过Composer安装

2a.) 对于*nix,检查您的基脚本是否可以执行

2b.) 对于Windows,检查您是否已安装PHP并且它位于%PATH%中

3.) 从/bin运行Clipr不带参数以测试它是否工作;您必须在项目目录内。

4a.) 您可能需要将clipr初始文件复制到某个地方,以便用户更容易访问。

4b.) 然后有必要在该文件中包含您自己的自动加载器。预设的一个可能不起作用。

4c.) 您还需要设置到基本clipr任务的正确路径,主要是因为不同的Composer路径。

5.) 调用您的clipr初始文件并检查它是否再次工作。尝试列出检查任务。

6.) 创建另一个目录以存放您的任务,并根据您的用例填充它们以基于类。

6.) 调用它们并检查是否一切正常运行

Composer

composer.phar require alex-kalanis/kw_clipr

(如果您不熟悉composer,请参阅 Composer 文档)

PHP使用

每个任务都存储在预设的目录中,其中您可以快速找到它们。路径设置在初始文件中。每个任务都是kw_clipr\Tasks\ATask的子类,允许编写输出和调用参数。

要运行任务,只需调用 your/path/to/clipr task/name --task-params

要创建您的任务,您必须创建一些目录,其中它们将存在,创建一些具有正确命名空间的任务,并将该根命名空间添加到Clipr初始化文件中的路径。如果您为您的类使用DI自动加载,则您还需要在Clipr初始化文件中指定该自动加载器 - 示例中已经有一个准备好的注释掉的占位符。我看到了DB或访问其他服务的类中的DI。

Clipr任务可以设置为树,因此您可以根据您的某些逻辑将它们分开。不需要在一个目录中填充一个包含大量任务的巨大列表。

对于开始,我建议您只是复制一个任务并与之玩耍。

更改

  • v2使用初始化DI的不同方式
  • v3使用单次运行任务的更改锁定机制
  • v4返回状态代码
  • v5使用数组作为路径设置

注意事项

在默认配置下,它包含 kw_autoload 和 kw_inputs 项目的子部分——这两者都是运行所必需的,无需其他依赖。如果您通过 Composer 安装,您会看到 kw_input 出现两次,kw_autoload 作为额外负载。但这没关系。如果 kw_autoload 没有在预定义的路径中寻找,那么它不会看到 composer 文件。对于默认运行,没有必要使用整个 Composer 机器,而且它是在没有它的基础上开发的。

最后——默认情况下,没有依赖注入支持。您必须自己设置它。因为这通常意味着至少安装 Composer,这正是我想避免的。通常的 DI 库非常依赖 Composer。整个 PSR 都是以 Composer 为前提构建的。此外,原始项目 CliC 没有DI支持。版本 2 对 DI 的支持更好,但它不是默认运行的。默认任务也没有它。