命令行工具

原文:命令行工具

查看全部命令

app/base/cmd help

如果需要显示每条命令的所支持的参数,则需要加上 -v

app/base/cmd help -v

创建一个新命令

简单的命令

在需要创建的 app 中的 lib/command 目录中创建指定命令,例:

执行命令如下:

app/base/cmd b2c:test hello
# Hello World

设置参数

有时候需要给命令添加几个自定义参数,示例如下:

执行命令如下:

app/base/cmd b2c:test hello Marvin
# Hello Marvin

选项设置

有时候,一条命令需要有多个可以选择的功能,比如 ls -al,其中 -al 就是可选的选项,用于筛选不同的结果和显示不同的样式,这里也可以,示例:

 array(
            'title' => '性别',
            // 支持短写
            'short' => 's'
        )
    );

    public function command_hello($name)
    {
        $options = $this->get_options();
        if ($options['sex']) {
            return 'Hello ' . $name . ', you are a ' . $options['sex'];
        }
        return 'Hello ' . $name;
    }
}

执行命令如下:

其中,--sex-s 的效果是一样的

app/base/cmd b2c:hello Marvin --sex boy
# Hello Marvin, you are a boy

输出设置

有时候需要输出一个表格,或者输出一整行,ecstore 也提供了相应的方法:

output_line('line');
        
        $array = array(
            array(
                'name', 'sex', 'age'
            ),
            array(
                'marvin', 'boy', '25'
            ),
            array(
                'cindy', 'girl', '26'
            )
        );
        $this->output_table($array);
    }
}

执行命令如下:

app/base/cmd b2c:hello
# line -----------------------
# name   sex  age
# marvin boy  25
# cindy  girl 26

你可能感兴趣的:(命令行工具)