Set-ItemProperty

Bir öğenin özelliğinin değerini oluşturur veya değiştirir.

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

cmdlet'i Set-ItemProperty belirtilen öğenin özelliğinin değerini değiştirir. Cmdlet'ini kullanarak öğelerin özelliklerini oluşturabilir veya değiştirebilirsiniz. Örneğin, bir dosya nesnesinin IsReadOnly özelliğinin değerini olarak ayarlamak için $TruekullanabilirsinizSet-ItemProperty.

Ayrıca, kayıt defteri değerlerini ve verilerini oluşturmak ve değiştirmek için de kullanırsınız Set-ItemProperty . Örneğin, bir anahtara yeni bir kayıt defteri girdisi ekleyebilir ve değerini oluşturabilir veya değiştirebilirsiniz.

Örnekler

Örnek 1: Dosyanın özelliğini ayarlama

Bu komut, "final.doc" dosyasının IsReadOnly özelliğinin değerini "true" olarak ayarlar. Dosyayı belirtmek için Path, özelliğin adını belirtmek için Ad ve yeni değeri belirtmek için Value parametresini kullanır.

Dosya bir System.IO.FileInfo nesnesidir ve IsReadOnly özelliğinden yalnızca biridir. Tüm özellikleri görmek için yazın Get-Item C:\GroupFiles\final.doc | Get-Member -MemberType Property.

Otomatik $true değişken "TRUE" değerini temsil eder. Daha fazla bilgi için bkz . about_Automatic_Variables.

Set-ItemProperty -Path C:\GroupFiles\final.doc -Name IsReadOnly -Value $true

Örnek 2: Kayıt defteri girdisi ve değeri oluşturma

Bu örnekte, yeni bir kayıt defteri girdisi oluşturmak ve girdiye bir değer atamak için nasıl kullanılacağı Set-ItemProperty gösterilmektedir. Anahtardaki "ContosoCompany" anahtarında HKLM\Software "NoOfEmployees" girişini oluşturur ve değerini 823 olarak ayarlar.

Kayıt defteri girdileri, kayıt defteri anahtarlarının öğeleri olan özellikleri olarak kabul edildiğinden, kayıt defteri girdileri oluşturmak ve değerlerini oluşturmak ve değiştirmek için kullanırsınız Set-ItemProperty .

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

İlk komut kayıt defteri girdisini oluşturur. Sürücünün yolunu HKLM: ve Software\MyCompany anahtarını belirtmek için Path kullanır. Komut, girdi adını belirtmek için Ad'ı, değer belirtmek için de Değer'i kullanır.

İkinci komut, yeni kayıt defteri girdisini Get-ItemProperty görmek için cmdlet'ini kullanır. veya Get-ChildItem cmdlet'lerini Get-Item kullanırsanız, girdiler öğeler veya alt öğeler değil, bir anahtarın özellikleri olduğundan görünmez.

Üçüncü komut, NoOfEmployees girişinin değerini 824 olarak değiştirir.

Ayrıca cmdlet'ini New-ItemProperty kullanarak kayıt defteri girdisini ve değerini oluşturabilir ve ardından değerini değiştirebilirsiniz Set-ItemProperty .

Sürücü hakkında HKLM: daha fazla bilgi için yazın Get-Help Get-PSDrive. PowerShell'i kullanarak kayıt defterini yönetme hakkında daha fazla bilgi için yazın Get-Help Registry.

Örnek 3: İşlem hattını kullanarak bir öğeyi değiştirme

Th örneği, dosyayı almak weekly.txt için kullanırGet-ChildItem. Dosya nesnesi adresine Set-ItemPropertyyöneltilir. komutu, özelliği ve yeni değerini belirtmek için Ad ve Değer parametrelerini kullanır.Set-ItemProperty

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

Parametreler

-Confirm

Cmdlet'i çalıştırmadan önce sizden onay ister.

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

-Credential

Not

Bu parametre, PowerShell ile yüklenen hiçbir sağlayıcı tarafından desteklenmez. Başka bir kullanıcının kimliğine bürünmek veya bu cmdlet'i çalıştırırken kimlik bilgilerinizi yükseltmek için Invoke-Command kullanın.

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Exclude

Dize dizisi olarak, bu cmdlet'in işlemde hariç tutulduğu öğeyi veya öğeleri belirtir. Bu parametrenin değeri Path parametresini niteler. gibi *.txtbir yol öğesi veya deseni girin. Joker karakterlere izin verilir. Exclude parametresi yalnızca komutu gibi C:\Windows\*bir öğenin içeriğini içerdiğinde geçerlidir; burada joker karakter dizinin içeriğini C:\Windows belirtir.

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

-Filter

Path parametresini nitelemek için bir filtre belirtir. FileSystem sağlayıcısı, filtrelerin kullanımını destekleyen tek yüklü PowerShell sağlayıcısıdır. FileSystem filtre dilinin söz dizimini about_Wildcards bulabilirsiniz. Filtreler diğer parametrelerden daha verimlidir, çünkü sağlayıcı, nesneleri aldıktan sonra PowerShell'in filtrelemesini yapmak yerine cmdlet nesneleri aldığında bunları uygular.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Force

Cmdlet'i, kullanıcı tarafından başka türlü erişilemeyen öğelerde bir özellik ayarlamaya zorlar. Uygulama sağlayıcıya göre değişir. Daha fazla bilgi için bkz . about_Providers.

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

-Include

Dize dizisi olarak, bu cmdlet'in işleme dahil olduğu öğeyi veya öğeleri belirtir. Bu parametrenin değeri Path parametresini niteler. gibi "*.txt"bir yol öğesi veya deseni girin. Joker karakterlere izin verilir. Include parametresi yalnızca komutu gibi C:\Windows\*bir öğenin içeriğini içerdiğinde geçerlidir; burada joker karakter dizinin içeriğini C:\Windows belirtir.

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

-InputObject

Bu cmdlet'in değiştirdiği özelliklere sahip nesneyi belirtir. Nesneyi içeren bir değişken veya nesneyi alan bir komut girin.

Type:PSObject
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-LiteralPath

Bir veya daha fazla konumun yolunu belirtir. LiteralPath değeri tam olarak yazıldığı gibi kullanılır. Hiçbir karakter joker karakter olarak yorumlanmamıştır. Yol kaçış karakterleri içeriyorsa, tek tırnak içine alın. Tek tırnak işaretleri PowerShell'e hiçbir karakteri kaçış dizisi olarak yorumlamaması gerektiğini söyler.

Daha fazla bilgi için bkz . about_Quoting_Rules.

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

-Name

Özelliğin adını belirtir.

Type:String
Aliases:PSProperty
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

Item özelliğini temsil eden bir nesne döndürür. Varsayılan olarak, bu cmdlet herhangi bir çıkış oluşturmaz.

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

-Path

Değiştirileceği özelliği olan öğelerin yolunu belirtir. Joker karakterlere izin verilir.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-Type

Bu, Kayıt Defteri sağlayıcısı tarafından sağlanan dinamik bir parametredir. Kayıt defteri sağlayıcısı ve bu parametre yalnızca Windows'da kullanılabilir.

Bu cmdlet'in eklediği özellik türünü belirtir. Bu parametrenin kabul edilebilir değerleri şunlardır:

  • String: Null olarak sonlandırılan bir dize belirtir. REG_SZ değerler için kullanılır.
  • ExpandString: Değer alındığında genişletilen ortam değişkenlerine açıklanmamış başvurular içeren null olarak sonlandırılan bir dize belirtir. REG_EXPAND_SZ değerler için kullanılır.
  • Binary: İkili verileri herhangi bir biçimde belirtir. REG_BINARY değerler için kullanılır.
  • DWord: 32 bit ikili bir sayı belirtir. REG_DWORD değerleri için kullanılır.
  • MultiString: İki null karakterle sonlandırılan null sonlandırılmış dize dizisini belirtir. REG_MULTI_SZ değerler için kullanılır.
  • Qword: 64 bit ikili bir sayı belirtir. REG_QWORD değerleri için kullanılır.
  • Unknown: REG_RESOURCE_LIST değerleri gibi desteklenmeyen bir kayıt defteri veri türünü gösterir.
Type:RegistryValueKind
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Value

özelliğinin değerini belirtir.

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

-WhatIf

Cmdlet çalıştırılıyorsa ne olacağını gösterir. Cmdlet çalıştırılmaz.

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

Girişler

PSObject

Nesneleri bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

None

Varsayılan olarak, bu cmdlet çıkış döndürmez.

PSCustomObject

PassThru parametresini kullandığınızda, bu cmdlet değiştirilen öğeyi ve yeni özellik değerini temsil eden bir PSCustomObject nesnesi döndürür.

Notlar

PowerShell için aşağıdaki diğer adları Set-ItemPropertyiçerir:

  • Tüm platformlar:
    • sp

Set-ItemProperty herhangi bir sağlayıcı tarafından kullanıma sunulan verilerle çalışacak şekilde tasarlanmıştır. Oturumunuzda kullanılabilen sağlayıcıları listelemek için yazın Get-PSProvider. Daha fazla bilgi için bkz . about_Providers.