我使用 Click 编写了一个 CLI 应用程序。我有一个允许链接命令的组,应用程序的调用方式类似于 my_cli cmd1 --arg1 val1 cmd2 run。我想确保用户在最后而不是在中间指定 run
命令。这可以通过点击来实现吗?谢谢!
最佳答案
实际上,您可以完全绕过 Click 来实现此目的,只需检查 run
命令是否位于最后一个位置之外的任何位置:
from sys import argv
def check_run_command_pos():
if "run" in argv[:-1]:
raise SyntaxError('`run` must be the last command of a chain')
if __name__ == "__main__":
check_run_command_pos()
关于Python Click 在执行前确定链式命令的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59381170/