表示python点击的临时命令

问题描述 投票:0回答:0

有什么方法可以指示临时命令(通过文件或 API 读取)?

例如,这是一个示例命令

$ my-command
Usage: my-command [OPTIONS] COMMAND [ARGS]...

Options:
  --help  Show this message and exit.

Commands:
  create  Create item
  delete  Delete item
  get     Get item

当我跑步时

$ my-command google.com open

我想让它打开 google.com 页面。但目前它返回

No such command 'google.com'
,正如预期的那样。

我尝试过使用

Command Aliases
模式,

class AliasedGroup(click.Group):
    def get_command(self, ctx, cmd_name):
        rv = click.Group.get_command(self, ctx, cmd_name)
        if rv is not None:
            return rv
        matches = [x for x in self.list_commands(ctx)
                   if x.startswith(cmd_name)]
        if not matches:
            return None
        elif len(matches) == 1:
            return click.Group.get_command(self, ctx, matches[0])
        ctx.fail(f"Too many matches: {', '.join(sorted(matches))}")

    def resolve_command(self, ctx, args):
        # always return the full command name
        _, cmd, args = super().resolve_command(ctx, args)
        return cmd.name, cmd, args

但是在

get_command
我无法获得参数数据。

这有一些有用的模式吗?

python command click temporary
© www.soinside.com 2019 - 2024. All rights reserved.