Bagikan melalui


Set-ItemProperty

Membuat atau mengubah nilai properti item.

Sintaks

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>]

Deskripsi

Set-ItemProperty Cmdlet mengubah nilai properti item yang ditentukan. Anda dapat menggunakan cmdlet untuk membuat atau mengubah properti item. Misalnya, Anda dapat menggunakan Set-ItemProperty untuk mengatur nilai properti IsReadOnly dari objek file ke $True.

Anda juga menggunakan Set-ItemProperty untuk membuat dan mengubah nilai dan data registri. Misalnya, Anda dapat menambahkan entri registri baru ke kunci dan menetapkan atau mengubah nilainya.

Contoh

Contoh 1: Mengatur properti file

Perintah ini menetapkan nilai properti IsReadOnly dari file "final.doc" ke "true". Ini menggunakan Jalur untuk menentukan file, Nama untuk menentukan nama properti, dan parameter Nilai untuk menentukan nilai baru.

File adalah objek System.IO.FileInfo dan IsReadOnly hanyalah salah satu propertinya. Untuk melihat semua properti, ketik Get-Item C:\GroupFiles\final.doc | Get-Member -MemberType Property.

Variabel $true otomatis mewakili nilai "TRUE". Untuk informasi selengkapnya, lihat about_Automatic_Variables.

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

Contoh 2: Membuat entri dan nilai registri

Contoh ini menunjukkan cara menggunakan Set-ItemProperty untuk membuat entri registri baru dan untuk menetapkan nilai ke entri. Ini membuat entri "NoOfEmployees" di kunci "ContosoCompany" di HKLM\Software kunci dan menetapkan nilainya ke 823.

Karena entri registri dianggap sebagai properti kunci registri, yang merupakan item, Anda gunakan Set-ItemProperty untuk membuat entri registri, dan untuk menetapkan dan mengubah nilainya.

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

Perintah pertama membuat entri registri. Ini menggunakan Jalur untuk menentukan jalur HKLM: drive dan Software\MyCompany kunci. Perintah menggunakan Nama untuk menentukan nama entri dan Nilai untuk menentukan nilai.

Perintah kedua menggunakan cmdlet untuk melihat entri registri Get-ItemProperty baru. Jika Anda menggunakan Get-Item cmdlet atau Get-ChildItem , entri tidak muncul karena merupakan properti kunci, bukan item atau item turunan.

Perintah ketiga mengubah nilai entri NoOfEmployees menjadi 824.

Anda juga dapat menggunakan New-ItemProperty cmdlet untuk membuat entri registri dan nilainya lalu menggunakan Set-ItemProperty untuk mengubah nilai.

Untuk informasi selengkapnya tentang HKLM: drive, ketik Get-Help Get-PSDrive. Untuk informasi selengkapnya tentang cara menggunakan PowerShell untuk mengelola registri, ketik Get-Help Registry.

Contoh 3: Mengubah item dengan menggunakan alur

Contoh Th menggunakan Get-ChildItem untuk mendapatkan weekly.txt file. Objek file disalurkan ke Set-ItemProperty. Perintah Set-ItemProperty menggunakan parameter Nama dan Nilai untuk menentukan properti dan nilai barunya.

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

Parameter

-Confirm

Meminta Anda mengonfirmasi sebelum menjalankan cmdlet.

Jenis:SwitchParameter
Alias:cf
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Credential

Catatan

Parameter ini tidak didukung oleh penyedia apa pun yang diinstal dengan PowerShell. Untuk meniru pengguna lain, atau meningkatkan kredensial Anda saat menjalankan cmdlet ini, gunakan Invoke-Command.

Jenis:PSCredential
Position:Named
Nilai default:Current user
Diperlukan:False
Terima input alur:True
Terima karakter wildcard:False

-Exclude

Menentukan, sebagai array string, item atau item yang dikecualikan cmdlet ini dalam operasi. Nilai parameter ini memenuhi syarat parameter Path . Masukkan elemen atau pola jalur, seperti *.txt. Karakter kartubebas diizinkan. Parameter Kecualikan hanya efektif ketika perintah menyertakan konten item, seperti C:\Windows\*, di mana karakter kartubebas C:\Windows menentukan konten direktori.

Jenis:String[]
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:True

-Filter

Menentukan filter untuk memenuhi syarat parameter Jalur . Penyedia FileSystem adalah satu-satunya penyedia PowerShell yang diinstal yang mendukung penggunaan filter. Anda dapat menemukan sintaks untuk bahasa filter FileSystem dalam about_Wildcards. Filter lebih efisien daripada parameter lain, karena penyedia menerapkannya ketika cmdlet mendapatkan objek daripada memfilter PowerShell objek setelah diambil.

Jenis:String
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:True

-Force

Memaksa cmdlet untuk mengatur properti pada item yang tidak dapat diakses oleh pengguna. Implementasi bervariasi menurut penyedia. Untuk informasi selengkapnya, lihat about_Providers.

Jenis:SwitchParameter
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Include

Menentukan, sebagai array string, item atau item yang disertakan cmdlet ini dalam operasi. Nilai parameter ini memenuhi syarat parameter Path . Masukkan elemen atau pola jalur, seperti "*.txt". Karakter kartubebas diizinkan. Parameter Sertakan hanya efektif ketika perintah menyertakan konten item, seperti C:\Windows\*, di mana karakter kartubebas C:\Windows menentukan konten direktori.

Jenis:String[]
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:True

-InputObject

Menentukan objek yang memiliki properti yang diubah cmdlet ini. Masukkan variabel yang berisi objek atau perintah yang mendapatkan objek.

Jenis:PSObject
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-LiteralPath

Menentukan jalur ke satu atau beberapa lokasi. Nilai LiteralPath digunakan persis seperti yang ditik. Tidak ada karakter yang ditafsirkan sebagai kartubebas. Jika jalur menyertakan karakter escape, sertakan dalam tanda kutip tunggal. Tanda kutip tunggal memberi tahu PowerShell untuk tidak menginterpretasikan karakter apa pun sebagai urutan escape.

Untuk informasi selengkapnya, lihat about_Quoting_Rules.

Jenis:String[]
Alias:PSPath, LP
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-Name

Menentukan nama properti.

Jenis:String
Alias:PSProperty
Position:1
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-PassThru

Mengembalikan objek yang mewakili properti item. Secara default, cmdlet ini tidak menghasilkan output apa pun.

Jenis:SwitchParameter
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Path

Menentukan jalur item dengan properti yang akan diubah. Karakter kartubebas diizinkan.

Jenis:String[]
Position:0
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:True

-Type

Ini adalah parameter dinamis yang disediakan oleh penyedia Registri . Penyedia Registri dan parameter ini hanya tersedia di Windows.

Menentukan tipe properti yang ditambahkan cmdlet ini. Nilai yang dapat diterima untuk parameter ini adalah:

  • String: Menentukan string yang dihentikan null. Digunakan untuk nilai REG_SZ .
  • ExpandString: Menentukan string yang dihentikan null yang berisi referensi yang tidak tersedia ke variabel lingkungan yang diperluas saat nilai diambil. Digunakan untuk nilai REG_EXPAND_SZ .
  • Binary: Menentukan data biner dalam bentuk apa pun. Digunakan untuk nilai REG_BINARY .
  • DWord: Menentukan angka biner 32-bit. Digunakan untuk nilai REG_DWORD .
  • MultiString: Menentukan array string null-terminated yang dihentikan oleh dua karakter null. Digunakan untuk nilai REG_MULTI_SZ .
  • Qword: Menentukan angka biner 64-bit. Digunakan untuk nilai REG_QWORD .
  • Unknown: Menunjukkan jenis data registri yang tidak didukung, seperti nilai REG_RESOURCE_LIST .
Jenis:RegistryValueKind
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:True
Terima karakter wildcard:False

-Value

Menentukan nilai properti.

Jenis:Object
Position:2
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-WhatIf

Menunjukkan apa yang akan terjadi jika cmdlet berjalan. Cmdlet tidak dijalankan.

Jenis:SwitchParameter
Alias:wi
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

Input

PSObject

Anda dapat menyalurkan objek ke cmdlet ini.

Output

None

Secara default, cmdlet ini tidak mengembalikan output.

PSCustomObject

Saat Anda menggunakan parameter PassThru , cmdlet ini mengembalikan objek PSCustomObject yang mewakili item yang diubah dan nilai properti barunya.

Catatan

PowerShell menyertakan alias berikut untuk Set-ItemProperty:

  • Semua platform:
    • sp

Set-ItemProperty dirancang untuk bekerja dengan data yang diekspos oleh penyedia mana pun. Untuk mencantumkan penyedia yang tersedia di sesi Anda, ketik Get-PSProvider. Untuk informasi selengkapnya, lihat about_Providers.