Paramètre PowerShell : syntaxe, types, attributs, arguments et exemples
Les développeurs de scripts PowerShell utilisent le bloc Powershell Param pour ajouter des paramètres aux fonctions avancées. Toute personne exécutant la fonction peut accéder aux paramètres ajoutés avec PowerShell Param.
De plus, outre les paramètres ajoutés à une fonction avec le bloc Param, Windows PowerShell ajoute automatiquement Common Parameters .
Ce guide couvre la syntaxe de Powershell Param, les types de paramètres Powershell, leurs attributs et arguments. Il donne également quelques exemples d'utilisation du bloc Param pour ajouter des paramètres à un script ou à une fonction.
utilisation élevée du processeur avast windows 10
Parcourir les sujets de publication
- Syntaxe d'un bloc de paramètres PowerShell
- Types de paramètres PowerShell
- Attributs et arguments des paramètres PowerShell Param
- Comment définir un paramètre PowerShell dans plusieurs ensembles de paramètres
- Exemples de paramètres PowerShell
- ParameterSetName Exemple de paramètre PowerShell
- Exemples d'attribut CmdletBinding et d'argument DefaultParameterSetName
- Exemple de paramètre de chaîne FolderPath
- Exemple de paramètre de commutateur DisplayResult, ExportTxt et ExportCSV
- Comment utiliser PowerShell Param dans une fonction PowerShell
- Test de mes paramètres PowerShell dans la fonction PowerShell
- Références et lectures complémentaires
Syntaxe d'un bloc de paramètres PowerShell
La syntaxe de PowerShell Param est…
|__+_|
Pour ajouter un paramètre à une fonction, commencez par le mot arrêter , suivi du bloc de paramètres, (). Voici une forme simple d'un bloc param…
|__+_| le CmdletBinding L'attribut est facultatif et c'est le seul attribut défini en dehors du bloc param. Plus d'informations à ce sujet plus loin dans le guideDans le bloc Param – param () – vous définirez les attributs Parameter et leurs arguments. De plus, un attribut de paramètre est enfermé dans un bloc [()].
Dans le code de syntaxe ci-dessus, j'ai mis en gras tous les arguments de paramètre. Il y a beaucoup plus d'arguments de paramètres - ceux de la syntaxe sont uniquement à des fins d'illustration et ne sont en aucun cas exhaustifs.
Dans le bloc de paramètres, vous définirez des arguments de paramètre, séparés par des virgules. Un exemple d'attribut PowerShell Param est le paramètre attribut.
De plus, un exemple d'argument param est le obligatoire argument. Un autre exemple d'argument param est Nom du jeu de paramètres .
Enfin, vous définirez le nom du paramètre. De plus, vous spécifierez également le type de données du paramètre.
Dans la section suivante, je discuterai des types courants de paramètres PowerShell. Ensuite, la troisième section couvre les attributs de paramètres communs et leurs arguments.
Enfin, dans la dernière section de ce guide, je donnerai un exemple réel SysAdmin d'un PowerShell Param. La section donnera également des exemples d'utilisation du bloc param dans une fonction avancée.
Types de paramètres PowerShell
Les types de paramètres les plus courants que vous pouvez définir sont chaîne de caractères ou changer paramètres. De plus, vous pouvez également définir entier , bourdonner , DateHeure ou les types de paramètres char.
Dans cette section, j'expliquerai certains de ces types de paramètres. Je vais également donner quelques exemples de la façon de les définir dans un bloc param.
Paramètre PowerShell Chaîne de caractères Paramètre
Lorsque vous créez des paramètres PowerShell, il est probable que vous créerez un chaîne de caractères paramètre. UNE chaîne de caractères Le paramètre accepte n'importe quelle valeur de chaîne.
Dans Windows PowerShell, une chaîne peut être constituée de nombres, de mots ou de caractères. Plus précisément, tout ce que vous déclarez entre guillemets doubles ou simples est une chaîne.
Dans PowerShell, le type d'objet d'une chaîne est System.String .
Pour déclarer un paramètre PowerShell en tant que paramètre de chaîne, avant le nom du paramètre, placez le mot chaîne de caractères entre parenthèses. Voici un exemple…
|__+_|Paramètre PowerShell entier Paramètre
Une entier le type de données est un entier signé 32 bits. En anglais, un entier est un nombre, par exemple 1, 2 ou 3.
Contrairement à un chaîne de caractères paramètre type de données qui peut prendre n'importe quel type de données, un entier paramètre est très normatif.
Si vous définissez un entier paramètre, le paramètre ne peut accepter que des nombres. De plus, si vous entrez des mots comme valeur pour le entier paramètre, PowerShell lancera un message d'erreur.
Avant de vous montrer comment définir un paramètre PowerShell entier paramètre, voici un exemple général de la façon de définir un type de données int…
|__+_|Si j'exécute le code dans PowerShell, il reviendra 123 .
Au contraire, si je remplace 123 par ceci est un int, PowerShell lancera un message d'erreur.
|__+_|
Maintenant que vous avez eu un entier cours intensif sur les types de données, pour créer un paramètre PowerShell entier paramètre appelé nombre, voici le code…
|__+_|Cela obligera les utilisateurs de votre script ou de votre fonction à fournir le bon type de données.
Paramètre PowerShell DateHeure Paramètre
Comme un entier paramètre, un DateHeure Le paramètre est également très prescriptif du type d'entrée qu'il accepte. Comme son nom l'indique, le DateHeure n'acceptera que les entrées au format Date et Heure.
Si vous souhaitez définir un paramètre PowerShell qui n'acceptera que les dates, utilisez l'exemple de code ci-dessous…
|__+_|Dans cet exemple, EntrezDate est le nom du paramètre. En outre, DateHeure définit le type de données.
Paramètre PowerShell Changer Paramètre
Dans les trois premières sous-sections de cette section, j'ai abordé les types de paramètres PowerShell qui nécessitent une entrée d'un utilisateur.
Cependant, il existe un type de paramètre PowerShell qui ne nécessite pas l'entrée d'un utilisateur. Contrairement aux autres types de paramètres, un changer paramètre ne nécessite pas d'entrée de l'utilisateur.
La façon dont vous définissez un changer Le paramètre est similaire à la façon dont vous définissez d'autres types de paramètres. Cependant, à la place de changer , entier , ou date-heure , utilisez le mot changer .
Par exemple pour définir un paramètre PowerShell Changer paramètre, ExportCSV , utilisez le code ci-dessous…
|__+_|Enfin, pour cette section, vous vous interrogez peut-être sur l'application de changer paramètres. Pensez à un script ou à une fonction PowerShell qui peut afficher des résultats sur la console Powershell.
Vous pouvez également donner à l'utilisateur la possibilité d'exporter le résultat vers un fichier texte ou un fichier CSV.
Une façon de coder la fonction consiste à créer 3 paramètres de commutateur. Un utilisateur peut ensuite sélectionner l'un des paramètres, en fonction de la manière dont il souhaite que la fonction fournisse le résultat.
Ce type de paramètre ne nécessite pas que l'utilisateur saisisse une entrée. En sélectionnant simplement le paramètre, la fonction affichera la sortie en conséquence.
Vous pouvez également définir d'autres paramètres PowerShell avec des types de données spécifiques. Pour en savoir plus sur les types de données PowerShell, visitez ce lien - Comment définir les types de données PowerShell .Attributs et arguments des paramètres PowerShell Param
Dans la syntaxe PowerShell Param de ce guide, j'ai laissé entendre qu'un paramètre PowerShell a des attributs. De plus, j'ai également souligné que chaque attribut de paramètre a également des arguments.
Dans cette section, je vais discuter des attributs de paramètre et de leurs arguments.
Pour expliquer les attributs de paramètre et leurs arguments, je me référerai à la syntaxe du paramètre PowerShell introduite dans la première section de ce guide.
|__+_|Paramètre PowerShell CmdletBinding Attribut
le CmdletBinding L'attribut est généralement spécifié avant le bloc param. Lorsque vous définissez le CmdletBinding , PowerShell reconnaîtra le script comme une fonction avancée.
Dans la section syntaxe de ce guide, j'ai utilisé ce code comme une version simplifiée d'un bloc param.
|__+_|Dans cette section, je me concentrerai sur CmdletBinding Attribut partie du code. Voici comment définir le Attribut …
|__+_|Dans les 3 sous-sections suivantes, je discuterai de certains des arguments communs, que vous pouvez définir dans le CmdletBinding attribut.
Pour éviter tout doute, vous devez définir tous Arguments dans le bloc () du Attribut . De plus, vous DEVEZ séparer tous les attributs par une virgule (,), sauf le dernier Arguments au sein de la Attribut .
Paramètre PowerShell Nom du jeu de paramètres par défaut Argument
Lorsque vous développez une fonction PowerShell, elle peut contenir plusieurs paramètres qu'un utilisateur peut utiliser dans la même commande. De plus, la même fonction PowerShell peut contenir un autre ensemble de paramètres qu'un utilisateur peut utiliser dans une autre commande.
Cependant, l'utilisateur ne peut pas mélanger les paramètres du premier ensemble avec les paramètres du second ensemble.
De plus, un développeur de fonction définit tous les paramètres qu'un utilisateur peut utiliser dans la même commande avec le Nom du jeu de paramètres argument. le Nom du jeu de paramètres L'argument est défini dans l'attribut de paramètre (plus d'informations à ce sujet dans la section suivante).
L'implication d'avoir différents ensembles de paramètres groupés est que vous aurez différents Nom du jeu de paramètres s.
Avec différents Nom du jeu de paramètres s défini dans votre bloc param, vous pouvez décider de définir l'un des Nom du jeu de paramètres s par défaut. C'est ici que vous utilisez le Nom du jeu de paramètres par défaut Argument.
le Nom du jeu de paramètres par défaut L'argument est défini dans le CmdletBinding bloc d'attributs. Voici un exemple…
|__+_|Enfin, pour conserver notre format de bloc param PowerShell, je vais réintroduire le bloc param ci-dessous…
|__+_|Paramètre PowerShell SupportsShouldProcess Argument
C'est un autre argument que vous pouvez définir dans le CmdletBinding Attribut . Comme le Nom du jeu de paramètres par défaut Argumentation, la SupportsShouldProcess L'argumentation est facultative.
le SupportsShouldProcess L'argument ajoute le Confirmer et Et qu'est-ce qui se passerait si paramètres communs à la fonction.
Pour ajouter cet argument, ajoutez une virgule (,) à la fin du Nom du jeu de paramètres par défaut argument. Ensuite, ajoutez la ligne – SupportsShouldProcess =$true ou $false.
Avec ce nouvel argument inclus, le CmdletBinding Attribut va maintenant ressembler à ceci…
|__+_|Paramètre PowerShell HelpURI Argument
Si vous connaissez PowerShell Obtenir de l'aide Cmdlet, vous avez peut-être rencontré son En ligne paramètre. Quand tu cours Obtenir de l'aide avec le En ligne paramètre, PowerShell ouvre la page d'aide en ligne de l'applet de commande.
Par exemple, pour ouvrir la page d'aide en ligne de l'applet de commande Out-File, exécutez la commande ci-dessous…
|__+_|La page ouverte par cette commande est définie dans une fonction par le HelpURI Argument. Ainsi, si vous souhaitez que les utilisateurs accèdent à la page d'aide en ligne de votre fonction, définissez le HelpURI Argument.
Voici un exemple…
|__+_|Je vais maintenant inclure ce dernier Argument dans le CmdletBinding Attribut . Voici le code mis à jour…
|__+_|Paramètre PowerShell Paramètre Attribut
Dans le paramètre PowerShell CmdletBinding Sous-section Attribut, j'ai discuté de 3 arguments que vous pouvez inclure dans la CmdletBinding Bloc d'attributs.
Comme vous l'avez vu, le CmdletBinding Le bloc d'attribut est le seul attribut défini en dehors du bloc param.
Dans cette sous-section, vous découvrirez l'attribut de paramètre. De plus, vous découvrirez également les arguments courants que vous pouvez ajouter à cet attribut.
Comme vous l'avez peut-être déduit des exemples déjà utilisés dans ce guide, l'attribut Parameter définit des arguments qui contrôlent le comportement d'un paramètre param PowerShell.
Vous pouvez définir l'attribut de paramètre en plaçant le mot Parameter, suivi de crochets () dans un bloc []. Voici un exemple…
|__+_|Ensuite, vous DEVEZ définir tous les arguments de l'attribut de paramètre dans le bloc ().
Dans les sous-sections suivantes de la section PowerShell Param Parameter Attribute, je présenterai et expliquerai les arguments communs que vous pouvez définir dans l'attribut Parameter.
télévision canadienne sur kodi
Paramètre PowerShell Nom du jeu de paramètres Argument
Quand j'ai expliqué Nom du jeu de paramètres par défaut plus tôt dans ce guide, j'ai présenté Nom du jeu de paramètres Argument. Vous pouvez utiliser cet argument pour grouper ou grouper des paramètres qu'un utilisateur peut exécuter dans la même commande.
Par exemple, pour définir un Nom du jeu de paramètres appelé ParameterSetName1 , entrez le code ci-dessous dans le bloc Parameter Attribute ().
|__+_|Lorsque j'introduis ce code mis à jour, le bloc param de mon exemple de code ressemblera maintenant à ceci.
|__+_|Si je ramène le CmdletBinding , mon exemple de code de paramètre PowerShell ressemblera maintenant à ceci…
|__+_|Paramètre PowerShell Obligatoire Argument
Vous pouvez utiliser le Obligatoire argument pour définir si un paramètre est obligatoire ou facultatif. le Obligatoire l'argument accepte une valeur $true ou $false - $true signifie requis, $false, non requis.
De plus, le Obligatoire l'argument est facultatif. Cependant, si cet argument n'est pas défini, le paramètre sera traité comme facultatif.
Pour définir le Obligatoire Argument, ajoutez le code ci-dessous au bloc Parameter Attribute…
|__+_|Enfin, si j'inclus le Obligatoire Code argument à mon code param PowerShell, j'aurai maintenant…
|__+_|Paramètre PowerShell Position Argument
le Position L'argument de l'attribut Parameter définit la position du paramètre. La valeur est un entier commençant à 0 (zéro).
Le bénéfice de la Position L'argument est de permettre aux utilisateurs d'exécuter la fonction en utilisant la position des paramètres. Plus précisément, lorsque vous définissez le Position Argument, un utilisateur peut entrer des valeurs pour chaque paramètre dans la ligne de commande sans spécifier le paramètre.
PowerShell attribuera ensuite chaque valeur dans la ligne de commande en fonction de la position du paramètre.
Par exemple, le Get-ChildItem L'applet de commande a un paramètre appelé Chemin (avec position 0). L'applet de commande a également un autre paramètre, Filtre (avec position 1).
Par défaut, si je lance le Get-ChildItem commande, je dois inclure les noms des paramètres avant d'ajouter leurs valeurs. Voir la commande ci-dessous…
|__+_|Dans cette commande, j'ai appelé les paramètres, puis spécifié leurs valeurs.
Cependant, comme je connais les positions de ces 2 paramètres, je peux ajouter des valeurs dans leurs positions, sans appeler expressément les paramètres. Je vais ensuite modifier ma commande comme indiqué ci-dessous…
|__+_|Evidemment, cela me fait gagner du temps ! Cependant, si vous regardez un long code PowerShell, cela peut prêter à confusion.
La commande donne le même résultat dans PowerShell…
PowerShell attribuera automatiquement les valeurs dans les positions aux paramètres en fonction de leur Position Argument.
Passons à autre chose, voici comment vous définissez le Position Argument…
|__+_| Dans cet exemple, ma position de paramètre est 0 (zéro). Lorsque je définirai mon paramètre suivant, il sera en position 1, et ainsi de suite. Vous ne pouvez pas avoir deux paramètres à la même position. Plus loin dans le guide, vous apprendrez comment ajouter un paramètre à la même position mais avec des ParameterSetNames différents.Je vais maintenant ajouter cet argument à mon exemple de code…
|__+_|Paramètre PowerShell ValeurDePipeline Argument
Un autre paramètre d'augmentation couramment utilisé est le ValeurDePipeline Argument. Comme son nom l'indique, cet argument détermine si un paramètre accepte les valeurs du pipeline.
Voici comment vous définissez cet argument…
|__+_|Si j'ajoute ce nouvel argument à mon code, il ressemblera à ceci…
|__+_|Il existe un autre argument appelé ValueFromPipelineByPropertyName . Pour en savoir plus sur cet argument, visitez about_Functions_Advanced_Parameters .
Paramètre PowerShell Message d'aide Argument
Vous pouvez utiliser cet argument pour spécifier le message pour montrer aux utilisateurs comment utiliser un paramètre. Pour définir un Message d'aide Argument pour un paramètre, utilisez un code similaire à celui ci-dessous…
|__+_|Et voici maintenant mon code mis à jour…
|__+_|Jusqu'à présent, dans cette section, j'ai discuté de 2 attributs de paramètre PowerShell - CmdletBinding et Paramètre . De plus, j'ai également discuté des arguments communs que vous pouvez définir pour ces attributs.
Dans les 3 sous-sections restantes de cette section, je vais vous apprendre 3 attributs de paramètres PowerShell plus couramment utilisés. Cependant, ces 3 attributs ne vous obligent pas à définir des arguments.
Paramètre PowerShell Alias Attribut
L'attribut alias est utilisé pour spécifier les alias d'un paramètre. Comme vous l'avez peut-être deviné, l'alias d'un paramètre PowerShell peut être utilisé à la place du paramètre.
Avant de vous montrer comment définir l'attribut alias pour un paramètre, permettez-moi d'abord de vous montrer comment trouver les alias de toutes les applets de commande et fonctions sur votre ordinateur.
Pour répertorier tous les alias des applets de commande et des fonctions, exécutez la commande ci-dessous
|__+_|Cela listera tous les alias…
Passer à Alias Attribut, pour en définir un pour un paramètre de paramètre PowerShell, utilisez un code similaire à celui ci-dessous…
|__+_| Dans cet exemple, FP est l'alias du paramètre.Si j'ajoute ceci à mon code, la version mise à jour ressemblera à ceci…
|__+_|Paramètre PowerShell Prend en charge les caractères génériques Attribut
Cet attribut param de paramètre détermine si un paramètre accepte les caractères génériques. Voici comment définir cet attribut…
|__+_|Paramètre PowerShell ValidateNotNullOrEmpty Attribut de validation
Comme la plupart des attributs déjà couverts dans ce guide, le nom de cet attribut le révèle également. C'est un attribut de validation.
Lorsque vous définissez cet attribut, le paramètre n'acceptera PAS de valeur nulle ($null). De plus, il n'acceptera pas de valeur vide ().
Si un utilisateur entre $null ou , la fonction génère une erreur. Pour définir cet attribut, saisissez le code ci-dessous…
|__+_|Enfin, je mettrai à jour mon code avec les 2 derniers attributs…
|__+_|Nom du paramètre de paramètre PowerShell
Après avoir défini tous les attributs et arguments d'un paramètre, vous devez ajouter le nom du paramètre. Un paramètre de paramètre PowerShell est défini comme une variable - avec un signe dollar ($), suivi du nom du paramètre.
Vous pouvez également éventuellement entrer un type de données pour le paramètre. Dans la section 2 de ce guide, j'ai abordé différents types de paramètres PowerShell.
Voici comment définir un paramètre pouvant accepter chaîne de caractères Type de données.
|__+_|Voici mon exemple de code mis à jour…
|__+_|Comment définir un paramètre PowerShell dans plusieurs ensembles de paramètres
Si vous débutez dans le codage des fonctions PowerShell, il y a de fortes chances que vous tombiez dans la tentation de définir un paramètre plusieurs fois.
L'une des raisons pour lesquelles vous souhaiterez peut-être avoir un paramètre plusieurs fois est lorsqu'un paramètre est utilisé dans plusieurs ParameterSetNames (plusieurs jeux de paramètres).
Pour conduire cette maison, disons que vous développez une fonction PowerShell qui a un Chemin paramètre. Cependant, vous avez 2 ParameterSetNames qui nécessitent le paramètre Path.
La plupart des personnes qui découvrent les scripts PowerShell définiront probablement les paramètres indiqués ci-dessous…
|__+_|Si vous définissez les paramètres, comme indiqué ci-dessus, vous recevrez un message d'erreur. Pour tester cette théorie, je vais copier le code dans PowerShell ISE .
Alors, comment résoudre ce problème ? La solution consiste à définir les 2 attributs de paramètres et leurs arguments, y compris leurs ParameterSetNames.
Ensuite, à la fin des deux attributs de paramètre, définissez un seul nom de paramètre commun aux deux attributs de paramètre. Dans l'exemple précédent, je supprimerai le premier nom de paramètre et laisserai le dernier.
|__+_|Maintenant, si je copie ce code sur PowerShell ISE, tout ira bien.
Dans cet exemple, notez que les arguments de paramètre pour les deux attributs de paramètre peuvent être complètement différents. De plus, vous pouvez définir autant d'attributs de paramètre que vous le souhaitez.Exemples de paramètres PowerShell
Dans cette dernière section du guide, je donnerai un exemple réel de paramètre SysAdmin PowerShell.
Pendant que j'écrivais ce guide, j'ai commencé à développer un script/une fonction PowerShell pour obtenir la taille du dossier et le nombre de fichiers. Voici la partie param de la fonction…
|__+_|Dans les prochaines sous-sections de cette section, j'expliquerai les différents éléments du param. Enfin, la dernière section introduit un bloc fonction et ajoute le bloc param dans la fonction.
Pour vous permettre de suivre facilement les lignes du code référencé dans les sous-sections suivantes, téléchargez PowerShellParamExample.zip . Ensuite, décompressez le fichier et ouvrez le fichier .ps1 dans PowerShell ISE .
ParameterSetName Exemple de paramètre PowerShell
Mon exemple de code de paramètre PowerShell a trois ParameterSetNames - AfficherRésultat , ExportTxt et ExportCSV . J'ai utilisé ces noms pour faciliter l'identification de ce qu'ils font.
Dans l'introduction de cette section, j'ai mentionné que la fonction que je construis avec ce code de paramètre affichera la taille du dossier et le nombre de fichiers pour chaque sous-dossier dans un dossier spécifié.
Par conséquent, les trois ParameterSetNames offrent à un utilisateur la possibilité d'afficher les résultats sur la console PowerShell. Alternativement, un utilisateur a la possibilité d'exporter le résultat vers un fichier texte ou un fichier CSV.
De plus, chaque Nom du jeu de paramètres définir tous les paramètres qu'un utilisateur peut appeler en une seule commande. Sur la base de cette idée, la fonction que je construis aura trois options de commande ou syntaxes.
Je développerai cette idée dans les sous-sections et exemples suivants.
CmdletBinding Attribut Et Nom du jeu de paramètres par défaut Exemples d'arguments
Dans les sections précédentes de ce guide, vous avez rencontré les CmdletBinding Attribut. De plus, vous êtes également tombé sur l'un de ses arguments - Nom du jeu de paramètres par défaut .
le Nom du jeu de paramètres par défaut L'argument est utilisé pour définir le jeu de paramètres par défaut qu'une fonction appelle. Dans cet exemple, le nom du jeu de paramètres par défaut est AfficherRésultat .
le Nom du jeu de paramètres par défaut est déclaré à la ligne 1 du code.
PowerShell tentera d'utiliser le jeu de paramètres déclaré par le Nom du jeu de paramètres par défaut s'il ne peut pas déterminer quel jeu de paramètres utiliser. Cependant, si vous définissez des paramètres obligatoires, vous pouvez éviter ce problème.
Dans tous les cas, il n'y a aucun mal à déclarer un nom de jeu de paramètres par défaut.
CheminDossier Exemple de paramètre de chaîne
C'est là que le plaisir commence ! le CheminDossier Le paramètre est utilisé pour entrer le chemin du dossier, la fonction obtiendra la taille de ses sous-dossiers - et comptera le nombre de fichiers dans chaque sous-dossier.
Il s'agit d'un paramètre de chaîne. Cela signifie qu'il accepte n'importe quelle chaîne en entrée.
Une caractéristique passionnante du CheminDossier paramètre est qu'il est commun aux 3 noms de jeux de paramètres. Plus tôt dans cet article, j'ai expliqué le défi auquel les nouveaux développeurs de scripts PowerShell peuvent être confrontés dans cette situation.
Pour déclarer le CheminDossier paramètre dans les trois noms de jeu de paramètres, j'ai créé trois attributs de paramètre.
Le premier attribut de paramètre se situe entre les lignes 5 et 11. De plus, ce premier attribut de paramètre a plusieurs arguments.
Cependant, j'aimerais que vous prêtiez une attention particulière à la Nom du jeu de paramètres argument - AfficherRésultat .
Deuxièmement, entre les lignes 12 et 18, j'ai déclaré un autre attribut de paramètre avec un Nom du jeu de paramètres argument appelé ExportTxt .
Enfin, entre les lignes 19 et 25, j'ai déclaré un troisième attribut de paramètre avec un Nom du jeu de paramètres argument appelé ExportCSV .
De plus, si vous remarquez, contrairement à la déclaration de 3 attributs de paramètres, j'ai déclaré un seul Alias , et ValidateNotNullOrEmpty les attributs. Ces attributs se trouvent aux lignes 26 et 27.
Enfin, juste en dessous de tous les attributs et de leurs arguments, j'ai inclus le nom du paramètre - CheminDossier . Le nom du paramètre est à la ligne 28.
Dans la dernière sous-section de cette section, vous verrez comment la fonction affiche ce paramètre dans 3 syntaxes de commande.AfficherRésultat , ExportTxt Et ExportCSV Exemple de paramètre de commutateur
À partir de la ligne 29 du code param, j'ai déclaré un autre ensemble d'attributs de paramètres et leurs arguments.
Tout d'abord, entre les lignes 29 et 37, je déclare les attributs et arguments du paramètre pour le AfficherRésultat paramètre.
Ensuite, entre les lignes 38 et 47, je déclare un autre paramètre appelé ExportTxt .
Enfin, entre les lignes 48 et 57, j'ai déclaré le ExportCSV paramètre.
Les 3 paramètres que j'ai décrits dans cette section sont tous Changer paramètres. Comme vous le savez déjà, cela signifie que les paramètres ne nécessitent aucune intervention de la part de l'utilisateur.
Lorsqu'un utilisateur sélectionne l'un des paramètres, la fonction modifie la façon dont elle affiche les résultats.
bibliothèque pour le décodage aacs vlc
Comment utiliser PowerShell Param dans une fonction PowerShell
Dans cette sous-section, je souhaite introduire le bloc de fonction PowerShell dans mon exemple de code.
La syntaxe d'un bloc de fonction PowerShell est…
|__+_|Pour le dernier exemple de ce guide, je remplacerai le bloc param PowerShell dans la syntaxe de la fonction par mon code param de la dernière sous-section. De plus, je remplacerai la fonction par Get-FolderSizeFileCount , le nom de la fonction.
La fonction finale ressemblera maintenant à ceci…
|__+_| Pour cet exemple, les blocs Begin {}, Process {} et End {} sont vides.Test de mes paramètres PowerShell dans la fonction PowerShell
Dans cette dernière section, je vais tester les paramètres de la fonction que j'ai créée dans la dernière section.
Si vous souhaitez le tester vous-même, vous pouvez télécharger le code en cliquant sur ce lien – Get-FolderSizeFileCount.zip . Ensuite, décompressez le fichier zip.
Une fois le fichier décompressé, ouvrez PowerShell et exécutez la commande ci-dessous :
|__+_| Modifiez le chemin d'accès complet au fichier décompressé.Lorsque vous exécutez la commande, vous recevez un message d'avertissement. À l'invite du message, entrez R et appuyez sur la touche entrée de votre clavier.
Une fois le module importé, sur la même console PowerShell, exécutez la commande ci-dessous :
|__+_|Voici le résultat de la commande...
Ce que je veux vous montrer, c'est la section SYNTAX de la page d'aide de ma fonction. À partir de la capture d'écran ci-dessus, vous pouvez exécuter la commande Get-FolderSizeFileCount dans 3 commandes différentes :
|__+_|La première chose à noter est que les trois syntaxes ont pour CheminDossier paramètre de chaîne. Si vous lisez ce guide, vous saurez pourquoi.
De plus, vous remarquerez que la première syntaxe a le AfficherRésultat paramètre de commutation également. Enfin, dans les deuxième et troisième syntaxes, vous avez le ExportCSV , et ExportTxt paramètre de commutateur respectivement.
En plus de CheminDossier , et ExportCSV paramètres et ExportTxt paramètres dans les deuxième et troisième syntaxes respectivement, ils ont également le ReportPath paramètre de chaîne. Je n'ai pas mentionné ce paramètre car le code de déclaration est similaire au CheminDossier code, avec quelques différences mineures. le ReportPath est utilisé pour spécifier le chemin par lequel la fonction enregistrera les rapports de fichier texte et CSV.C'est tout - un guide complet sur les paramètres PowerShell ! J'espère que vous l'avez trouvé utile?
Si vous l'avez trouvé utile, merci de voter Oui à la question Was this post Helpful ci-dessous.
Alternativement, vous pouvez poser une question, laisser un commentaire ou fournir plus de commentaires avec le formulaire Laisser une réponse qui se trouve à la fin de cette page.
Enfin, pour plus de zones S techniques PowerShell, visitez notre page de guide pratique Windows PowerShell. Vous pouvez également trouver notre page Travail à domicile très utile.


