Set-Variable
Définit la valeur d’une variable. Crée la variable si l’une avec le nom demandé n’existe pas.
Syntaxe
Default (Par défaut)
Set-Variable
[-Name] <String[]>
[[-Value] <Object>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Description <String>]
[-Option <ScopedItemOptions>]
[-Force]
[-Visibility <SessionStateEntryVisibility>]
[-PassThru]
[-Scope <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
La cmdlet Set-Variable affecte une valeur à une variable spécifiée ou modifie la valeur actuelle. Si la variable n’existe pas, l’applet de commande la crée.
Exemples
Exemple 1 : Définir une variable et obtenir sa valeur
PS C:\> Set-Variable -Name "desc" -Value "A description"
PS C:\> Get-Variable -Name "desc"
Ces commandes définissent la valeur de la variable desc sur une description A, puis obtient la valeur de la variable.
Exemple 2 : Définir une variable globale en lecture seule
PS C:\> Set-Variable -Name "processes" -Value (Get-Process) -Option constant -Scope global -Description "All processes" -PassThru | Format-List -Property *
Cette commande crée une variable globale en lecture seule qui contient tous les processus sur le système, puis affiche toutes les propriétés de la variable.
La commande utilise l’applet de commande set-variable
La valeur , « (Get-Process) », est placée entre parenthèses pour s’assurer qu’elle est exécutée avant d’être stockée dans la variable. Sinon, la variable contient les mots « Get-Process ».
Exemple 3 : Comprendre les variables publiques et privées
PS C:\> New-Variable -Name "counter" -Visibility Public -Value 26
PS C:\> $Counter
26
PS C:\> Get-Variable c*
Name Value
---- -----
Culture en-US
ConsoleFileName
ConfirmPreference High
CommandLineParameters {}
Counter 26
PS C:\> Set-Variable -Name "counter" -Visibility Private
PS C:\> Get-Variable c*
Name Value
---- -----
Culture en-US
ConsoleFileName
ConfirmPreference High
CommandLineParameters {}
PS C:\> $counter
"Cannot access the variable '$counter' because it is a private variable"
PS C:\> .\use-counter.ps1
#Commands completed successfully.
Cette commande montre comment modifier la visibilité d’une variable en private. Cette variable peut être lue et modifiée par des scripts avec les autorisations requises, mais elle n’est pas visible pour l’utilisateur.
L’exemple de sortie montre la différence dans le comportement des variables publiques et privées.
Paramètres
-Confirm
Vous invite à confirmer avant d’exécuter l’applet de commande.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | cf |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Description
Spécifie la description de la variable.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Exclude
Spécifie un tableau d’éléments que cette applet de commande exclut de l’opération.
La valeur de ce paramètre qualifie le paramètre Path.
Entrez un élément de chemin ou un modèle, tel que *.txt.
Les caractères génériques sont autorisés.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Force
Vous permet de créer une variable portant le même nom qu’une variable en lecture seule existante ou de modifier la valeur d’une variable en lecture seule.
Par défaut, vous pouvez remplacer une variable, sauf si la variable a une valeur d’option readOnly ou Constante.
Pour plus d’informations, consultez le paramètre option
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Include
Spécifie un tableau d’éléments inclus dans cette applet de commande dans l’opération.
La valeur de ce paramètre qualifie le paramètre Name.
Entrez un nom ou un modèle de nom, tel que c*.
Les caractères génériques sont autorisés.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Name
Spécifie le nom de la variable.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | 0 |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-Option
Spécifie la valeur de la propriété Options de la variable.
Les valeurs valides sont les suivantes :
- Aucun : définit aucune option. (« Aucun » est la valeur par défaut.)
- ReadOnly : peut être supprimé. Impossible de modifier, sauf en utilisant le paramètre Force.
- Constante : Impossible de supprimer ou de modifier. « Constante » est valide uniquement lorsque vous créez une variable. Vous ne pouvez pas modifier les options d’une variable existante en « Constante ».
- Privé : la variable est disponible uniquement dans l’étendue actuelle.
- AllScope : la variable est copiée dans toutes les nouvelles étendues créées.
Pour afficher la propriété options de toutes les variables de la session, tapez Get-Variable | Format-Table -Property name, options -Autosize.
Propriétés du paramètre
| Type: | ScopedItemOptions |
| Valeur par défaut: | None |
| Valeurs acceptées: | None, ReadOnly, Constant, Private, AllScope, Unspecified |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-PassThru
Retourne un objet représentant la nouvelle variable. Par défaut, cette applet de commande ne génère aucune sortie.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Scope
Spécifie l’étendue de la variable. Les valeurs acceptables pour ce paramètre sont les suivantes :
- Mondial
- Local
- Scénario
- Privé
- Nombre relatif à l’étendue actuelle (0 au nombre d’étendues, où 0 est l’étendue actuelle et 1 est son parent).
Local est la valeur par défaut.
Pour plus d’informations, consultez about_Scopes.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | Local |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Value
Spécifie la valeur de la variable.
Propriétés du paramètre
| Type: | Object |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | 1 |
| Obligatoire: | False |
| Valeur du pipeline: | True |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-Visibility
Détermine si la variable est visible en dehors de la session dans laquelle elle a été créée. Ce paramètre est conçu pour être utilisé dans les scripts et les commandes qui seront remis à d’autres utilisateurs.
Les valeurs valides sont les suivantes :
- Public : la variable est visible. (« Public » est la valeur par défaut.)
- Privé : la variable n’est pas visible.
Lorsqu’une variable est privée, elle n’apparaît pas dans les listes de variables, telles que celles retournées par Get-Variable, ou dans les affichages de la variable : lecteur. Les commandes permettant de lire ou de modifier la valeur d’une variable privée retournent une erreur. Toutefois, l’utilisateur peut exécuter des commandes qui utilisent une variable privée si les commandes ont été écrites dans la session dans laquelle la variable a été définie.
Propriétés du paramètre
| Type: | SessionStateEntryVisibility |
| Valeur par défaut: | Public |
| Valeurs acceptées: | Public, Private |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-WhatIf
Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande ne s’exécute pas.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | Wi |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
CommonParameters
Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.
Entrées
Object
Vous pouvez diriger un objet qui représente la valeur de la variable à Set-Variable .
Sorties
None or System.Management.Automation.PSVariable
Lorsque vous utilisez le paramètre PassThru