使用 Typer 的单命令脚本?

问题描述

我的脚本中只有一个命令,即“cli”:

import typer

app = typer.Typer()


@app.command()
def cli() -> None:
    """Script usage
    """
    print("cli")


@app.callback()
def read_config(ctx: typer.Context):
    print("read_config")

所以目前我应该使用“cli”参数来调用它:

$ script cli

这显然是多余的。

如何使“cli”成为认命令,这样我就不需要在命令行中提供它?像这样:

$ script

单命令脚本的官方文档provide an example

if __name__ == "__main__":
    typer.run(main)

在这种情况下,您不能使用装饰器,特别是 app.callback()

所以我想知道如何实现这两个目标 - 使用单一命令和使用装饰器?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)