Crée ou modifie la valeur d'une propriété d'un élément.

Syntaxe

Set-ItemProperty [-LiteralPath] <string[]> -InputObject <psobject> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]

Set-ItemProperty [-Path] <string[]> -InputObject <psobject> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]

Set-ItemProperty [-LiteralPath] <string[]> [-Name] <string> [-Value] <Object> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]

Set-ItemProperty [-Path] <string[]> [-Name] <string> [-Value] <Object> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-PassThru] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]

Description

L'applet de commande Set-ItemProperty modifie la valeur de la propriété de l'élément spécifié. Vous pouvez utiliser cette applet de commande pour définir ou modifier les propriétés d'éléments. Par exemple, vous pouvez utiliser Set-ItemProperty pour affecter la valeur true à la propriété IsReadOnly d'un objet fichier.

Vous pouvez également utiliser Set-ItemProperty pour créer et modifier des données et des valeurs de Registre. Par exemple, vous pouvez ajouter une nouvelle entrée de Registre à une clé, puis définir ou modifier sa valeur.

Paramètres

-Credential <PSCredential>

Spécifie un compte d'utilisateur qui a l'autorisation d'exécuter cette action. La valeur par défaut est l'utilisateur actuel.

Tapez un nom d'utilisateur, tel que « User01 » ou « Domain01\User01 », ou entrez un objet PSCredential, tel que celui généré par l'applet de commande Get-Credential. Si vous tapez un nom d'utilisateur, vous êtes invité à entrer un mot de passe.

Ce paramètre n'est pas pris en charge par les fournisseurs installés avec Windows PowerShell.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

true (ByPropertyName)

Accepter les caractères génériques ?

false

-Exclude <string[]>

Spécifie les éléments qui ne doivent pas être affectés par l'applet de commande et inclut tous les autres.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-Filter <string>

Spécifie un filtre dans le format ou le langage du fournisseur. La valeur de ce paramètre qualifie le paramètre Path. La syntaxe du filtre, notamment l'utilisation de caractères génériques, dépend du fournisseur. Les filtres sont plus efficaces que les autres paramètres, car le fournisseur les applique lors de la récupération des objets, plutôt que de laisser le soin à Windows PowerShell de filtrer les objets une fois qu'ils ont été récupérés.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-Force

Permet à l'applet de commande de définir une propriété sur des éléments qui, sinon, ne sont pas accessibles par l'utilisateur. L'implémentation est différente d'un fournisseur à l'autre. Pour plus d'informations, consultez about_Providers.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-Include <string[]>

Spécifie uniquement les éléments affectés par l'applet de commande, en excluant tous les autres.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-InputObject <psobject>

Spécifie l'objet qui a les propriétés que vous voulez changer. Entrez une variable qui contient l'objet ou tapez une commande permettant d'obtenir cet objet.

Obligatoire ?

true

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

true (ByValue, ByPropertyName)

Accepter les caractères génériques ?

false

-LiteralPath <string[]>

Spécifie un chemin d'accès à la propriété d'élément. La valeur de -LiteralPath est utilisée exactement telle que vous la tapez. Aucun caractère n'est interprété en tant que caractère générique. Si le chemin d'accès inclut des caractères d'échappement, mettez-le entre des guillemets simples. Les guillemets simples indiquent à Windows PowerShell qu'aucun caractère ne doit être interprété en tant que séquence d'échappement.

Obligatoire ?

true

Position ?

1

Valeur par défaut

Accepter l'entrée de pipeline ?

true (ByPropertyName)

Accepter les caractères génériques ?

false

-Name <string>

Spécifie le nom de la propriété.

Obligatoire ?

true

Position ?

2

Valeur par défaut

Accepter l'entrée de pipeline ?

true (ByPropertyName)

Accepter les caractères génériques ?

false

-PassThru

Retourne un objet représentant la propriété de l'élément. Par défaut, cette applet de commande ne génère aucune sortie.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-Path <string[]>

Spécifie le chemin d'accès aux éléments dont la propriété doit être définie.

Obligatoire ?

true

Position ?

1

Valeur par défaut

Accepter l'entrée de pipeline ?

true (ByPropertyName)

Accepter les caractères génériques ?

false

-Value <Object>

Spécifie la valeur de la propriété.

Obligatoire ?

true

Position ?

3

Valeur par défaut

Accepter l'entrée de pipeline ?

true (ByPropertyName)

Accepter les caractères génériques ?

false

-Confirm

Vous invite à confirmer l'exécution de la commande.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-WhatIf

Décrit le résultat que vous obtiendriez en exécutant la commande, sans réellement l'exécuter.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-UseTransaction

Inclut la commande dans la transaction active. Ce paramètre est valide uniquement lorsqu'une transaction est en cours. Pour plus d'informations, consultez about_Transactions.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

<CommonParameters>

Cette applet de commande prend en charge les paramètres courants : -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer et -OutVariable. Pour plus d'informations, consultez about_Commonparameters.

Entrées et sorties

Le type d'entrée est le type des objets que vous pouvez diriger vers l'applet de commande. Le type de retour est le type des objets que l'applet de commande retourne.

Entrées

System.Management.Automation.PSObject

Vous pouvez diriger les objets vers Set-ItemProperty.

Sorties

Aucun ou System.Management.Automation.PSCustomObject

Lorsque vous utilisez le paramètre PassThru, Set-ItemProperty génère un objet PsCustomObject qui représente l'élément qui a été modifié et sa nouvelle valeur de propriété. Sinon, cette applet de commande ne génère aucune sortie.

Remarques

L'applet de commande Set-ItemProperty est conçue pour utiliser les données exposées par n'importe quel fournisseur. Pour répertorier les fournisseurs disponibles dans votre session, tapez « Get-PSProvider ». Pour plus d'informations, consultez about_Providers.

Exemple 1

C:\PS>set-itemproperty -path c:\GroupFiles\final.doc -name IsReadOnly -value $true

Description
-----------
Cette commande affecte la valeur true à la propriété IsReadOnly du fichier final.doc. 

La commande utilise l'applet de commande Set-ItemProperty pour modifier la valeur de la propriété du fichier final.doc. Elle utilise le paramètre Path pour spécifier le fichier. Elle utilise le paramètre Name pour spécifier le nom de la propriété et le paramètre Value pour spécifier la nouvelle valeur.

La variable automatique $true représente une valeur de TRUE. Pour plus d'informations, consultez about_Automatic_Variables.

Le fichier est un objet System.IO.FileInfo et IsReadOnly n'est que l'une de ses propriétés. Pour afficher toutes les propriétés et les méthodes d'un objet FileInfo, dirigez le fichier vers l'applet de commande Get-Member. Par exemple, « final.doc | get-member ».






Exemple 2

C:\PS>set-itemproperty -path HKLM:\Software\MyCompany -name NoOfEmployees -value 823

C:\PS>get-itemproperty -path HKLM:\Software\MyCompany

PSPath        : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\mycompany
PSParentPath  : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName   : mycompany
PSDrive       : HKLM
PSProvider    : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 823

C:\PS>set-itemproperty -path HKLM:\Software\MyCompany -name NoOfEmployees -value 824
C:\PS>get-itemproperty -path HKLM:\Software\MyCompany


PSPath        : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\mycompany
PSParentPath  : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName   : mycompany
PSDrive       : HKLM
PSProvider    : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 824

Description
-----------
Cet exemple montre comment utiliser Set-ItemProperty pour créer une entrée de Registre et affecter une valeur à cette entrée. Il crée l'entrée NoOfEmployees dans la clé MyCompany de la clé HKLM\Software et lui affecte la valeur 823.

Les entrées de Registre étant considérées comme des propriétés des clés de Registre (qui sont des éléments), vous pouvez utiliser Set-ItemProperty pour créer des entrées de Registre, puis définir et modifier leurs valeurs.

La première commande utilise l'applet de commande Set-ItemProperty pour créer l'entrée de Registre. Elle utilise le paramètre Path pour spécifier le chemin d'accès du lecteur HKLM: et de la clé Software\MyCompany. Elle utilise le paramètre Name pour spécifier le nom de l'entrée et le paramètre Value pour spécifier sa valeur.

La deuxième commande utilise l'applet de commande Get-ItemProperty pour afficher la nouvelle entrée de Registre. Si vous utilisez les applets de commande Get-Item ou Get-ChildItem, les entrées ne s'affichent pas, car elles sont des propriétés d'une clé, et non des éléments ou des éléments enfants.

La troisième commande affecte une nouvelle valeur (824) à l'entrée NoOfEmployees.

Vous pouvez également utiliser l'applet de commande New-ItemProperty pour créer l'entrée de Registre et sa valeur, puis utiliser Set-ItemProperty pour modifier la valeur.

Pour plus d'informations sur le lecteur HKLM:, tapez « get-help get-psdrive ». Pour plus d'informations sur l'utilisation de Windows PowerShell pour gérer le Registre, tapez « get-help registry ».






Exemple 3

C:\PS>get-childitem weekly.txt | set-itemproperty -name IsReadOnly -value $true

Description
-----------
Ces commandes montrent comment utiliser un opérateur de pipeline (|) pour envoyer un élément à Set-ItemProperty. 

La première partie de la commande utilise l'applet de commande Get-ChildItem pour obtenir un objet qui représente le fichier Weekly.txt. La commande utilise un opérateur de pipeline pour envoyer l'objet fichier à Set-ItemProperty. La commande Set-ItemProperty utilise le paramètre Name pour spécifier la propriété et le paramètre Value pour spécifier sa nouvelle valeur.

Cette commande revient à utiliser le paramètre InputObject pour spécifier l'objet obtenu par Get-ChildItem.






Voir aussi




Table des matières