Set-ItemProperty
Crée ou modifie la valeur d’une propriété d’un élément.
Syntaxe
Set-ItemProperty
[-Path] <string[]>
[-Name] <string>
[-Value] <Object>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-ItemProperty
[-Path] <string[]>
-InputObject <psobject>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-ItemProperty
[-Name] <string>
[-Value] <Object>
-LiteralPath <string[]>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-ItemProperty
-LiteralPath <string[]>
-InputObject <psobject>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-ItemProperty
[-Path] <string[]>
[-Name] <string>
[-Value] <Object>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Set-ItemProperty
[-Path] <string[]>
-InputObject <psobject>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Set-ItemProperty
[-Name] <string>
[-Value] <Object>
-LiteralPath <string[]>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Set-ItemProperty
-LiteralPath <string[]>
-InputObject <psobject>
[-PassThru]
[-Force]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Description
L’applet de commande Set-ItemProperty
modifie la valeur de la propriété de l’élément spécifié.
Vous pouvez utiliser l’applet de commande pour établir ou modifier les propriétés des éléments.
Par exemple, vous pouvez utiliser Set-ItemProperty
pour définir la valeur de la propriété IsReadOnly d’un objet de fichier sur $True
.
Vous utilisez également Set-ItemProperty
pour créer et modifier les valeurs et données du Registre.
Par exemple, vous pouvez ajouter une nouvelle entrée de Registre à une clé et établir ou modifier sa valeur.
Exemples
Exemple 1 : Définir une propriété d’un fichier
Cette commande définit la valeur de la propriété IsReadOnly du fichier « final.doc » sur « true ». Il utilise chemin d’accès pour spécifier le fichier, Name pour spécifier le nom de la propriété et le paramètre Value pour spécifier la nouvelle valeur.
Le fichier est un objet System.IO.FileInfo et IsReadOnly n’est qu’une de ses propriétés.
Pour afficher toutes les propriétés, tapez Get-Item C:\GroupFiles\final.doc | Get-Member -MemberType Property
.
La variable automatique $true
représente une valeur de « TRUE ». Pour plus d’informations, consultez about_Automatic_Variables.
Set-ItemProperty -Path C:\GroupFiles\final.doc -Name IsReadOnly -Value $true
Exemple 2 : Créer une entrée et une valeur de Registre
Cet exemple montre comment utiliser Set-ItemProperty
pour créer une entrée de Registre et affecter une valeur à l’entrée. Il crée l’entrée « NoOfEmployees » dans la clé « ContosoCompany » dans HKLM\Software
clé et définit sa valeur sur 823.
Étant donné que les entrées de Registre sont considérées comme des propriétés des clés de Registre, qui sont des éléments, vous utilisez Set-ItemProperty
pour créer des entrées de Registre et pour établir et modifier leurs valeurs.
Set-ItemProperty -Path "HKLM:\Software\ContosoCompany" -Name "NoOfEmployees" -Value 823
Get-ItemProperty -Path "HKLM:\Software\ContosoCompany"
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\contosocompany
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName : contosocompany
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 823
Set-ItemProperty -Path "HKLM:\Software\ContosoCompany" -Name "NoOfEmployees" -Value 824
Get-ItemProperty -Path "HKLM:\Software\ContosoCompany"
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\contosocompany
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName : contosocompany
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 824
La première commande crée l’entrée de Registre.
Il utilise chemin d’accès pour spécifier le chemin du lecteur HKLM:
et la clé Software\MyCompany
.
La commande utilise Nom pour spécifier le nom de l’entrée et Valeur pour spécifier une 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é, pas d’éléments ou d’éléments enfants.
La troisième commande modifie la valeur de l’entrée NoOfEmployees 824.
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 PowerShell pour gérer le Registre, tapez Get-Help Registry
.
Exemple 3 : Modifier un élément à l’aide du pipeline
Th example utilise Get-ChildItem
pour obtenir le fichier weekly.txt
. L’objet de fichier est redirigé vers Set-ItemProperty
. La commande Set-ItemProperty
utilise les paramètres name et Value pour spécifier la propriété et sa nouvelle valeur.
Get-ChildItem weekly.txt | Set-ItemProperty -Name IsReadOnly -Value $True
Paramètres
-Confirm
Vous invite à confirmer avant d’exécuter l’applet de commande.
Type: | SwitchParameter |
Alias: | cf |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Credential
Note
Ce paramètre n’est pas pris en charge par les fournisseurs installés avec PowerShell. Pour emprunter l’identité d’un autre utilisateur ou élever vos informations d’identification lors de l’exécution de cette applet de commande, utilisez Invoke-Command.
Type: | PSCredential |
Position: | Named |
Valeur par défaut: | Current user |
Obligatoire: | False |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-Exclude
Spécifie, en tant que tableau de chaînes, un élément ou des éléments que cette applet de commande exclut dans l’opération. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément ou un modèle de chemin d’accès, tel que *.txt
. Les caractères génériques sont autorisés. Le paramètre Exclure est efficace uniquement lorsque la commande inclut le contenu d’un élément, tel que C:\Windows\*
, où le caractère générique spécifie le contenu du répertoire C:\Windows
.
Type: | String[] |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | True |
-Filter
Spécifie un filtre pour qualifier le paramètre Path. Le fournisseur FileSystem est le seul fournisseur PowerShell installé qui prend en charge l’utilisation de filtres. Vous trouverez la syntaxe du langage de filtre FileSystem dans about_Wildcards. Les filtres sont plus efficaces que d’autres paramètres, car le fournisseur les applique lorsque l’applet de commande obtient les objets plutôt que de filtrer les objets après leur récupération.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | True |
-Force
Force l’applet de commande à définir une propriété sur les éléments qui ne peuvent pas être accessibles par l’utilisateur. L’implémentation varie selon le fournisseur. Pour plus d’informations, consultez about_Providers.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Include
Spécifie, sous la forme d’un tableau de chaînes, un élément ou des éléments inclus dans l’opération. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément ou un modèle de chemin d’accès, tel que "*.txt"
. Les caractères génériques sont autorisés. Le paramètre Include n’est effectif que lorsque la commande inclut le contenu d’un élément, tel que C:\Windows\*
, où le caractère générique spécifie le contenu du répertoire C:\Windows
.
Type: | String[] |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | True |
-InputObject
Spécifie l’objet qui a les propriétés modifiées par cette applet de commande. Entrez une variable qui contient l’objet ou une commande qui obtient l’objet.
Type: | PSObject |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-LiteralPath
Spécifie un chemin d’accès à un ou plusieurs emplacements. La valeur de LiteralPath est utilisée exactement comme elle est typée. Aucun caractère n’est interprété comme des caractères génériques. Si le chemin inclut des caractères d’échappement, placez-le entre guillemets simples. Les guillemets simples indiquent à PowerShell de ne pas interpréter de caractères comme séquences d’échappement.
Pour plus d’informations, consultez about_Quoting_Rules.
Type: | String[] |
Alias: | PSPath, LP |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-Name
Spécifie le nom de la propriété.
Type: | String |
Alias: | PSProperty |
Position: | 1 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-PassThru
Renvoie un objet qui représente la propriété d’élément. Par défaut, cette applet de commande ne génère aucune sortie.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Path
Spécifie le chemin des éléments avec la propriété à modifier. Les caractères génériques sont autorisés.
Type: | String[] |
Position: | 0 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | True |
-Type
Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur registre. Le fournisseur Registre et ce paramètre ne sont disponibles que sur Windows.
Spécifie le type de propriété ajouté par cette applet de commande. Les valeurs acceptables pour ce paramètre sont les suivantes :
-
String
: spécifie une chaîne terminée par null. Utilisé pour les valeurs REG_SZ. -
ExpandString
: spécifie une chaîne terminée par null qui contient des références non expirées aux variables d’environnement qui sont développées lorsque la valeur est récupérée. Utilisé pour les valeurs REG_EXPAND_SZ. -
Binary
: spécifie les données binaires sous n’importe quel formulaire. Utilisé pour les valeurs REG_BINARY. -
DWord
: spécifie un nombre binaire 32 bits. Utilisé pour REG_DWORD valeurs. -
MultiString
: spécifie un tableau de chaînes se terminant par deux caractères Null. Utilisé pour les valeurs REG_MULTI_SZ. -
Qword
: spécifie un nombre binaire 64 bits. Utilisé pour les valeurs REG_QWORD. -
Unknown
: indique un type de données de Registre non pris en charge, tel que des valeurs REG_RESOURCE_LIST.
Type: | RegistryValueKind |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-Value
Spécifie la valeur de la propriété.
Type: | Object |
Position: | 2 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-WhatIf
Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande n’est pas exécutée.
Type: | SwitchParameter |
Alias: | wi |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
Vous pouvez diriger des objets vers cette applet de commande.
Sorties
None
Par défaut, cette applet de commande ne retourne aucune sortie.
Lorsque vous utilisez le paramètre PassThru, cette applet de commande retourne un objet PSCustomObject représentant l’élément modifié et sa nouvelle valeur de propriété.
Notes
PowerShell inclut les alias suivants pour Set-ItemProperty
:
- Toutes les plateformes :
sp
Set-ItemProperty
est conçu pour fonctionner avec 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.