Comment analyser les multiples imbriquée des sous-commandes à l'aide de python argparse?

Je me suis mise en œuvre d'un programme en ligne de commande qui a une interface comme ceci:

cmd [GLOBAL_OPTIONS] {command [COMMAND_OPTS]} [{command [COMMAND_OPTS]} ...]

Je suis passé par le argparse documentation. Je peux mettre en œuvre GLOBAL_OPTIONS comme argument optionnel à l'aide de add_argument dans argparse. Et le {command [COMMAND_OPTS]} à l'aide de Sous-commandes.

De la documentation, il semble que je ne peut avoir qu'un sous-commande. Mais comme vous pouvez le voir, j'ai à mettre en œuvre un ou plusieurs sous-commandes. Quel est le meilleur moyen pour analyser de tels arguments de ligne de commande utilisant les argparse?

  • Je ne pense pas que c'est ce que sous-commandes est prévu pour. À partir de la documentation, il déclare que c'est, en substance, pour le contrôle distinct sous-programmes. Avez-vous regardé dans les argument groupes?
  • distutils ./setup.py a aussi ce style d'interface CLI, serait intéressant de regarder dans le code source.
InformationsquelleAutor Vikas | 2012-05-04