PowerShell Paramètre de la liste de valeurs
J'ai essayé de rechercher une réponse, mais je pense que le fait d'avoir les mots PowerShell et les paramètres de réunir dans un ensemble de mots-clés ne sont pas ce qui rend la recherche facile
Ma question est, je suis en train d'écrire une fonction, et j'ai fourni un paramètre, mais le paramètre est une liste de chaînes spécifiques.
Est-il un moyen que je peux fournir ces chaînes dans le script, de sorte que si je tape "myfunction -paramètre .." je peux utiliser la saisie semi-automatique pour la valeur du paramètre?
OriginalL'auteur Serge111 | 2014-02-08
Vous devez vous connecter pour publier un commentaire.
Si vous êtes sur PowerShell V2 vous pouvez utiliser le
[ValidateSet()]
attribut par exemple:Consultez la rubrique d'aide en exécutant:
OriginalL'auteur Keith Hill
Vous pouvez utiliser
[ValidateSet()]
que Keith démontre, mais cela ne fonctionne pas très bien avec un grand nombre de valeurs possibles (le remplissage de la liste lorsque vous appuyez sur la touche Tabulation devient très lent). Une autre méthode pour obtenir la saisie semi-automatique est de faire un custom enum:http://blogs.msdn.com/b/powershell/archive/2008/06/03/v2-custom-enums.aspx
et convertir le paramètre en tant que type enum. Ce n'imposent certaines limites sur le jeu de caractères autorisé dans vos cordes (essentiellement des lettres et nombre), mais il va remplir l'onglet liste de complétion beaucoup plus vite si c'est une relativement grande liste de valeurs.
OriginalL'auteur mjolinor