我将尝试从配置文件中生成“click”命令。 简而言之,就是以下模式:
然而,所有命令似乎都会路由到最后生成的命令:
我正在尝试的内容是否真的可行?
click
命令。
import click
@click.group()
def main():
pass
commands = ['foo', 'bar', 'baz']
for c in commands:
def _f():
print("I am the '{}' command".format(c))
_f = main.command(name=c)(_f)
if __name__ == '__main__':
main()
--help
文本看起来很好:
Usage: test_click.py [OPTIONS] COMMAND [ARGS]...
Options:
--help Show this message and exit.
Commands:
bar
baz
foo
然而,所有命令似乎都会路由到最后生成的命令:
$ ./test_click.py foo
I am the 'baz' command
$ ./test_click.py bar
I am the 'baz' command
$ ./test_click.py baz
I am the 'baz' command
我正在尝试的内容是否真的可行?