Set-ItemProperty

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

Syntax

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 Set-ItemProperty de commande 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 définir la valeur de la propriété IsReadOnly d’un objet $Truede fichier sur .

Vous pouvez Set-ItemProperty également créer et modifier des valeurs et des données de Registre. Par exemple, vous pouvez ajouter une nouvelle entrée de Registre à une clé, puis définir 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 Path 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 $true variable automatique 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 la 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 Path pour spécifier le chemin d’accès du HKLM: lecteur et de la Software\MyCompany clé. La commande utilise Name pour spécifier le nom d’entrée et la valeur pour spécifier une valeur.

La deuxième commande utilise l’applet Get-ItemProperty de commande pour afficher la nouvelle entrée de Registre. Si vous utilisez les applets de commande ou Get-ChildItem les Get-Item applets de commande, 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 pour créer l’entrée New-ItemProperty de Registre et sa valeur, puis l’utiliser Set-ItemProperty pour modifier la valeur.

Pour plus d’informations sur le HKLM: lecteur, 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 use Get-ChildItem to get the weekly.txt file. L’objet de fichier est redirigé vers Set-ItemProperty. La Set-ItemProperty commande utilise les paramètres Nom et Valeur pour spécifier la propriété et sa nouvelle valeur.

Get-ChildItem weekly.txt | Set-ItemProperty -Name IsReadOnly -Value $True

Paramètres

-Confirm

Vous demande une confirmation avant d’exécuter l’applet de commande.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Remarque

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
Default value:Current user
Required:False
Accept pipeline input:True
Accept wildcard characters: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 Exclude est effectif uniquement lorsque la commande inclut le contenu d’un élément, par C:\Windows\*exemple, où le caractère générique carte spécifie le contenu du C:\Windows répertoire.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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_Wild carte s. 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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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 est effectif uniquement lorsque la commande inclut le contenu d’un élément, par C:\Windows\*exemple, où le caractère générique carte spécifie le contenu du C:\Windows répertoire.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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 tapez une commande permettant d'obtenir cet objet.

Type:PSObject
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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é 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 à PowerShell de ne pas interpréter de caractères comme séquences d’échappement.

Pour plus d’informations, consultez about_Quoting_Rules.

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

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

Type:String
Aliases:PSProperty
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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 aucun résultat.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-Type

Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur de Registre . Le fournisseur de Registre et ce paramètre sont disponibles uniquement sur Windows.

Spécifie le type de propriété ajouté par cette applet de commande. Les valeurs valides pour ce paramètre sont :

  • 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 terminées par null terminées 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
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Value

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

Type:Object
Position:2
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entrées

PSObject

Vous pouvez diriger des objets vers cette applet de commande.

Sorties

None

Par défaut, cette applet de commande ne retourne aucune sortie.

PSCustomObject

Lorsque vous utilisez le paramètre PassThru , cette applet de commande retourne un objet PSCustomObject représentant l’élément qui a été 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.