Nom du fournisseur

Variable

Lecteurs

Variable :

Description courte

Donne accès aux variables Windows PowerShell et à leurs valeurs.

Description détaillée

Le fournisseur Variable de Windows PowerShell vous permet d'obtenir, d'ajouter, de modifier, d'effacer et de supprimer des variables Windows PowerShell dans la console actuelle.

Le fournisseur Variable de Windows PowerShell prend en charge les variables créées par Windows PowerShell, y compris les variables automatiques, les variables de préférence et les variables que vous créez.

Le fournisseur Variable est un espace de noms plat qui contient uniquement les objets de type variable. Les variables n'ont pas d'éléments enfants.

La plupart des variables sont des instances de la classe System.Management.Automation.PSVariable. Toutefois, il existe des variations. Par exemple, la variable « ? » est membre de la classe QuestionMarkVariable et la variable « MaximumVariableCount » est membre de la classe SessionStateCapacityVariable.

Le fournisseur Variable expose son magasin de données sur le lecteur Variable:. Pour utiliser des variables, vous pouvez redéfinir votre emplacement pour qu'il corresponde au lecteur Variable: (« set-location variable: ») ou travailler à partir de n'importe quel autre lecteur Windows PowerShell. Pour référencer une variable à partir d'un autre emplacement, utilisez le nom de lecteur (Variable:) dans le chemin d'accès.

Windows PowerShell inclut un jeu d'applets de commande spécialement conçues pour afficher et modifier les variables :

-- Get-Variable

-- New-Variable

-- Set-Variable

-- Remove-Variable

-- Clear-Variable

Lorsque vous utilisez ces applets de commande, vous n'avez pas besoin de spécifier le lecteur Variable: dans le nom.

Le fournisseur Variable prend en charge toutes les applets de commande dont le nom inclut Item (applets de commande Item), à l'exception de l'applet de commande Invoke-Item. Il prend en charge les applets de commande Get-Content et Set-Content. Toutefois, il ne prend pas en charge les applets de commande dont le nom inclut ItemProperty (applets de commande ItemProperty) et n'accepte le paramètre Filter dans aucune applet de commande.

Vous pouvez également utiliser l'analyseur d'expression de Windows PowerShell à créer, afficher et modifier les valeurs de variables sans utiliser les applets de commande. Lorsque vous travaillez directement avec des variables, utilisez un symbole dollar ($) pour identifier le nom comme une variable et l'opérateur d'assignation (=) pour établir et modifier sa valeur. Par exemple, « $p = get-process » crée la variable « p » et stocke dans cette dernière les résultats d'une commande « get-process ».

Toutes les modifications apportées aux variables affectent uniquement la session active. Pour enregistrer les modifications apportées, ajoutez-les au profil Windows PowerShell ou utilisez Export-Console pour enregistrer la console actuelle.

Exemples

Accès au lecteur Variable:

-------------------------- EXEMPLE 1 --------------------------

La commande suivante redéfinit l'emplacement actuel pour qu'il corresponde au lecteur Variable:. Vous pouvez utiliser cette commande depuis n'importe quel lecteur dans Windows PowerShell. Pour revenir à un lecteur de système de fichiers, tapez le nom du lecteur. Par exemple, tapez « set-location c: ».

set-location variable:

Affichage de la valeur des variables

-------------------------- EXEMPLE 1 --------------------------

La commande suivante permet d'obtenir la liste de toutes les variables et leurs valeurs dans la session active. Vous pouvez utiliser cette commande depuis n'importe quel lecteur Windows PowerShell.

get-childitem -path variable:

-------------------------- EXEMPLE 2 --------------------------

La commande suivante permet d'obtenir les variables dont le nom commence par « max ». Vous pouvez utiliser cette commande depuis n'importe quel lecteur Windows PowerShell.

get-childitem -path variable:max*

Si vous vous trouvez sur le lecteur Variable:, vous pouvez omettre le nom du lecteur dans le chemin d'accès.

-------------------------- EXEMPLE 3 --------------------------

La commande suivante permet d'obtenir la valeur de la variable WhatIfPreference en la tapant sur la ligne de commande.

Le nom de la variable est précédé d'un symbole dollar ($) pour indiquer qu'il s'agit d'une variable. Le nom du lecteur Variable: n'est pas spécifié.

$WhatIfPreference

-------------------------- EXEMPLE 4 --------------------------

La commande suivante utilise le paramètre LiteralPath de Get-ChildItem pour obtenir la valeur de la variable « ? » à partir du lecteur Variable:. Get-ChildItem ne tente pas de résoudre les caractères génériques contenus dans les valeurs du paramètre LiteralPath.

get-childitem -literalpath ?

Pour afficher la valeur d'une variable portant un nom de caractère spécial sans une applet de commande, tapez un symbole dollar ($) et le nom de la variable. Par exemple, pour afficher la valeur de la variable « ? », tapez « $? ».

-------------------------- EXEMPLE 5 --------------------------

La commande suivante obtient les variables dont la propriété Options a la valeur « ReadOnly » ou « Constant ».

get-childitem -path variable: | where-object {$_.options -match "Constant" -or $_.options -match "ReadOnly"} | format-list -property name, value, options

Création d'une variable

-------------------------- EXEMPLE 1 --------------------------

La commande suivante crée la variable « services » et stocke dans cette dernière les résultats d'une commande Get-Service. L'emplacement actuel étant situé sur le lecteur Variable:, la valeur du paramètre Path est un point (.), lequel représente l'emplacement actuel.

Les parenthèses qui entourent la commande Get-Service garantissent que l'exécution de la commande précède la création de la variable. Sans les parenthèses, la valeur de la nouvelle variable est une chaîne « Get-Service ».

new-item -path . -name services -value (Get-Service)

Si vous ne vous trouvez pas sur le lecteur Variable:, incluez le nom du lecteur Variable: dans le chemin d'accès.

-------------------------- EXEMPLE 2 --------------------------

La commande suivante crée une variable « services » et stocke dans cette dernière les résultats d'une commande Get-Service.

Elle utilise un symbole dollar ($) pour indiquer une variable et l'opérateur d'assignation (=) permettant d'assigner le résultat de la commande Get-Service à la variable nouvellement créée.

$services = Get-Service

Pour créer une variable sans valeur, omettez l'opérateur d'assignation.

Affichage des propriétés et méthodes des variables

-------------------------- EXEMPLE 1 --------------------------

La commande suivante utilise l'applet de commande Get-Item pour obtenir toutes les variables. L'opérateur de pipeline (|) envoie les résultats à l'applet de commande Get-Member, laquelle affiche les méthodes et propriétés de l'objet.

get-item -path variable:* | get-member

Lorsque vous dirigez une collection d'objets (telle que la collection de variables du lecteur Variable:) vers Get-Member, Get-Member évalue chaque objet de la collection séparément et retourne les informations relatives à chaque type d'objet trouvé. Pour obtenir les informations relatives à la collection d'objets du lecteur Variable:, utilisez le paramètre InputObject de Get-Member. Par exemple, « get-member -inputobject (get-item variable:*) ». Lorsque vous utilisez InputObject, Get-Member évalue la collection, et non pas les objets qu'elle contient.

-------------------------- EXEMPLE 2 --------------------------

La commande suivante répertorie les valeurs des propriétés de la variable « home ». Elle utilise l'applet de commande Get-Item pour obtenir un objet qui représente la variable « home ». L'opérateur de pipeline (|) envoie les résultats à la commande Format-List. La commande Format-List utilise le paramètre Property avec un caractère générique (*) afin de mettre en forme et d'afficher les valeurs de toutes les propriétés de la variable « home ».

get-item variable:home | format-list -property *

Modification des propriétés d'une variable

-------------------------- EXEMPLE 1 --------------------------

La commande suivante utilise l'applet de commande Rename-Item pour remplacer le nom de la variable « a » par « processes ».

rename-item -path variable:a -newname processes

-------------------------- EXEMPLE 2 --------------------------

La commande suivante utilise l'applet de commande Set-Item pour remplacer la valeur de la variable ErrorActionPreference par « Stop ».

set-item -path variable:ErrorActionPreference -value Stop

-------------------------- EXEMPLE 3 --------------------------

La commande suivante remplace la valeur de la variable ErrorActionPreference par « Stop ».

Elle utilise un symbole dollar ($) pour indiquer une variable et l'opérateur d'assignation (=) permettant d'assigner la valeur.

$ErrorActionPreference = Stop

Copie d'une variable

-------------------------- EXEMPLE 1 --------------------------

La commande suivante utilise l'applet de commande Copy-Item pour copier la variable « processes » dans « old_processes ». Cela crée un nouvelle variable nommée « old_processes » qui a la même valeur que la variable « processes ».

copy-item -path variable:processes -destination variable:old_processes

Si la commande est émise à partir du lecteur Variable:, vous pouvez omettre le nom du lecteur dans la valeur du paramètre Path.

-------------------------- EXEMPLE 2 --------------------------

La commande suivante copie la variable « processes » vers « old_processes » sans utiliser d'applet de commande. Elle utilise le symbole dollar ($) pour indiquer les variables et l'opérateur d'assignation permettant d'assigner la valeur « $processes » à « old_processes ».

$old_processes = $processes

Suppression d'une variable

-------------------------- EXEMPLE 1 --------------------------

La commande suivante supprime la variable « serv » de la session active. Vous pouvez l'utiliser sur n'importe quel lecteur Windows PowerShell.

remove-variable -path variable:serv

-------------------------- EXEMPLE 2 --------------------------

La commande suivante supprime toutes les variables de la session active, excepté celles dont la propriété Options a la valeur Constant. Sans le paramètre Force, la commande ne supprime pas les variables dont la propriété Options a la valeur ReadOnly.

remove-item variable:* -force

Attribution de la valeur NULL à une variable

-------------------------- EXEMPLE 1 --------------------------

La commande suivante utilise l'applet de commande Clear-Item pour remplacer la valeur de la variable « processes » par NULL.

clear-item -path variable:processes

-------------------------- EXEMPLE 2 --------------------------

La commande suivante efface la valeur de la variable « processes » en lui assignant la valeur Null. Elle utilise la variable automatique $null pour représenter la valeur NULL.

$processes = $null

Voir aussi




Table des matières