Maison > développement back-end > Golang > Comment définir et analyser des FlagSets indépendants dans Go pour les sous-commandes ?

Comment définir et analyser des FlagSets indépendants dans Go pour les sous-commandes ?

Linda Hamilton
Libérer: 2024-12-28 10:59:31
original
421 Les gens l'ont consulté

How to Define and Parse Independent FlagSets in Go for Subcommands?

Définition de FlagSets indépendants dans GoLang

Les FlagSets facilitent la définition d'ensembles d'indicateurs distincts, en prenant en charge l'implémentation de sous-commandes dans une interface de ligne de commande.

Dans Go, vous pouvez créer plusieurs types FlagSet et initialiser les variables de drapeau. Cependant, lors de l'analyse de ces ensembles d'indicateurs, vous rencontrerez des erreurs si la ligne de commande contient des indicateurs destinés à un autre ensemble.

f1 := flag.NewFlagSet("f1", flag.ContinueOnError)
apply := f1.Bool("apply", false, "")
silent := f1.Bool("silent", false, "")

f2 := flag.NewFlagSet("f2", flag.ContinueOnError)
reset := f2.Bool("reset", false, "")
Copier après la connexion

Pour séparer ces FlagSets, faites la distinction entre les sous-commandes et invoquez ensuite Parse sur l'ensemble approprié.

switch os.Args[1] {
  case "apply":
    f1.Parse(os.Args[2:])
    fmt.Println("apply", *silent)
  case "reset":
    f2.Parse(os.Args[2:])
    fmt.Println("reset", *loud)
}
Copier après la connexion

En adhérant à cette approche, vous pouvez définir et analyser des FlagSets indépendants dans GoLang, garantissant que les indicateurs ne sont applicables qu'à ceux auxquels ils sont destinés. sous-commandes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal