2 points par xguru 2025-03-26 | 1 commentaires | Partager sur WhatsApp
  • Parseur d’arguments en ligne de commande conforme aux standards GNU, comme ./test -vo out.png --size 256 input.txt
  • Message d’aide intégré disponible avec -h et --help
  • Association des arguments aux champs d’une structure via des tags
  • Prise en charge des champs de types complexes comme les tableaux, slices et structures
  • Prise en charge des sous-commandes imbriquées

Règles des arguments en ligne de commande GNU

  • Les éléments commençant par un tiret (-) sont des options
  • Plusieurs options peuvent être combinées (-abc équivaut à -a -b -c)
  • Les options longues commencent par deux tirets (--) (--abc)
  • Les noms d’options ne peuvent contenir que des caractères alphanumériques
  • Les valeurs d’option peuvent être définies par un espace, un signe égal (=) ou de manière contiguë (-a1, -a=1, -a 1 sont équivalents)
  • Les options et les valeurs non optionnelles peuvent être mélangées sans problème
  • Les options peuvent apparaître dans n’importe quel ordre.
  • -- indique la fin des options, et tous les arguments suivants sont traités comme non optionnels
  • Un seul - signifie généralement l’entrée standard ou la sortie standard
  • Si la même option est spécifiée plusieurs fois, la dernière valeur est appliquée
  • Une option peut avoir plusieurs valeurs (-a 1 2 3 est traité comme [1,2,3])

Fonctionnalités supplémentaires

  • Comptage d’options : -vvv définit v = 3
  • Ajout d’options : -v 1 -v 2 définit v = []int{1, 2}
  • Options booléennes : --var active et --no-var désactive
  • Les options peuvent être des types complexes comme des structures, slices et maps
  • Les options peuvent récupérer des valeurs de liste/dictionnaire depuis une source (par ex. SQL)

1 commentaires

 
haung921209 2025-03-26

J’utilisais cobra, mais en comparaison, argp propose pas mal d’options pour les flags haha