python - 模仿 AWS CLI/gcloud 命令行参数

我有用于与 Auth0 交互的实用程序脚本。我想将它们组合成一个类似于 gcloud 和 awscli 的工具:

$ gcloud [module] [commands & args]
$ aws cloudformation validate-template --template-body file://test.yml

$ auth0 user add --email [EMAIL] ...
$ auth0 connection backup --connection [CXD_ID]
$ auth0 [user | connection | client | ...]

我不认为我可以使用 argparse 来做到这一点,因为它将不带前导破折号的参数视为强制性位置参数,但我当然不是专家。

最佳答案

@delirious-lettuce 提供了答案:argparse 中的子命令。经验教训:在发布到 SO 之前阅读所有文档。

相关:

https://docs.python.org/3/library/argparse.html#sub-commands

How to parse multiple nested sub-commands using python argparse?

https://stackoverflow.com/questions/49243663/

相关文章:

apache-flink - 在不重启作业的情况下在 Apache Flink 中动态添加模式

python - 删除使用 imageio 或 PIL 创建的 GIF 中的空间插值或压缩

python - BeautifulSoup- find_all- 订单保存

google-bigquery - bigquery 备份所有 View 定义

python - 如何对 Pandas RE .str.extract() 使用 RE OR 操作数

android - 在 test.Jar 中启动 startActivity() ,Cordova

google-app-engine - 如何在 objectify 中通过嵌套 Refs 进行查询

c# - 如何在 OData v4 中获取枚举值而不是枚举名称?

json - 使用 REST API 的 POST 方法进行读取操作

security - 自动关联社交登录有什么安全风险(Oauth2)