【发布时间】:2018-11-03 11:25:51
【问题描述】:
我正在为我的 CLI 使用 python click。当我传入错误的参数或标志集时,会弹出一条使用消息。但是,当我使用 --help 标志时,会弹出更详细的使用消息,其中包含所有选项和参数的列表。有没有办法更改默认行为,以便使用错误打印完整的详细帮助?
例如,打印出缺少的参数
mycli foo
Usage: mycli foo [OPTIONS] MY_ARG
Error: Missing argument "my_arg".
但添加--help 打印
mycli foo --help
Usage: mycli foo [OPTIONS] MY_ARG
Long and useful description of the command and stuff.
Options:
-h, --help Show this message and exit.
命令大致是这样实现的
@click.group()
@click.pass_context
def cli(ctx):
ctx.obj = {}
@cli.command()
@click.argument('my_arg')
@click.pass_context
@report_errors
def foo(ctx, my_arg):
# some stuff here
【问题讨论】:
-
如果您要举例说明如何构建命令,这将更容易回答。有多种方法可以构建上述内容,它们的解决方案会略有不同。
标签: python python-click