共用方式為


New-ItemProperty

建立專案的新屬性,並設定其值。

語法

Path (預設值)

New-ItemProperty
    [-Path] <String[]>
    [-Name] <String>
    [-PropertyType <String>]
    [-Value <Object>]
    [-Force]
    [-Filter <String>]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

LiteralPath

New-ItemProperty
    [-Name] <String>
    -LiteralPath <String[]>
    [-PropertyType <String>]
    [-Value <Object>]
    [-Force]
    [-Filter <String>]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

New-ItemProperty Cmdlet 會為指定的專案建立新的屬性,並設定其值。 此 Cmdlet 通常用來建立新的登錄值,因為登錄值是登錄機碼項目的屬性。

此 Cmdlet 不會將屬性新增至 物件。

  • 若要將屬性新增至對象的實例,請使用 Add-Member Cmdlet。
  • 若要將屬性新增至特定類型的所有物件,請修改 Types.ps1xml 檔案。

範例

範例 1:新增登錄專案

此命令會將新的登錄專案 NoOfEmployees新增至 MyCompanyHKLM:\Software hive 機碼。

第一個命令會使用 Path 參數來指定 MyCompany 登錄機碼的路徑。 它會使用 Name 參數來指定項目的名稱,並使用 Value 參數來指定其值。

第二個命令會使用 Get-ItemProperty Cmdlet 來查看新的登錄專案。

New-ItemProperty -Path "HKLM:\Software\MyCompany" -Name "NoOfEmployees" -Value 822
Get-ItemProperty "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 : 822

範例 2:將登錄專案新增至機碼

此命令會將新的登錄專案新增至登錄機碼。 若要指定索引鍵,它會使用管線運算子 (|) 將代表索引鍵的物件傳送至 New-ItemProperty

命令的第一個部分會使用 Get-Item Cmdlet 來取得 MyCompany 登錄機碼。 管線運算符會將命令的結果傳送至 New-ItemProperty,這會將新的登錄專案 (NoOfLocations), 及其值 (3) 新增至 MyCompany 機碼。

Get-Item -Path "HKLM:\Software\MyCompany" | New-ItemProperty -Name NoOfLocations -Value 3

此命令的運作方式是因為 PowerShell 的參數係結功能會將 RegistryKeyGet-Item 對象的路徑與 New-ItemProperty 參數產生關聯。 如需詳細資訊,請參閱 about_Pipelines

範例 3:使用 Here-String 在登錄中建立 MultiString 值

此範例會使用 Here-String 建立 MultiString 值。

$newValue = New-ItemProperty -Path "HKLM:\SOFTWARE\ContosoCompany\" -Name 'HereString' -PropertyType MultiString -Value @"
This is text which contains newlines
It can also contain "quoted" strings
"@
$newValue.HereString
This is text which contains newlines
It can also contain "quoted" strings

範例 4:使用陣列在登錄中建立 MultiString 值

此範例示範如何使用值陣列來建立 MultiString 值。

$newValue = New-ItemProperty -Path "HKLM:\SOFTWARE\ContosoCompany\" -Name 'MultiString' -PropertyType MultiString -Value ('a','b','c')
$newValue.MultiString[0]
a

參數

-Confirm

在執行 Cmdlet 之前,提示您進行確認。

參數屬性

類型:SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False
別名:cf

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Credential

指定具有執行此動作許可權的用戶帳戶。 預設值為目前的使用者。

輸入使用者名稱,例如 User01Domain01\User01,或輸入 PSCredential 物件,例如 Get-Credential Cmdlet 所產生的用戶名稱。 如果您輸入使用者名稱,系統會提示您輸入密碼。

備註

任何與 PowerShell 一起安裝的提供者都不支援此參數。 若要模擬其他使用者,或在執行此 Cmdlet 時提升您的認證,請使用 Invoke-Command

參數屬性

類型:PSCredential
預設值:Current user
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-Exclude

指定要在此 Cmdlet 作業中排除的項目或多項,並以字串陣列形式表示。 此參數的值對 路徑 參數進行限定。 輸入路徑元素或模式,例如 *.txt。 允許使用通配符字元。 只有在命令包含項目的內容,例如 時,C:\Windows\* 參數才有效,其中通配符會指定 C:\Windows 目錄的內容。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:True
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Filter

指定篩選條件,以限定 Path 參數。 FileSystem 提供者是唯一已安裝且支援使用篩選的 PowerShell 提供者。 您可以在 about_Wildcards中找到 FileSystem 篩選語言的語法。 篩選比其他參數更有效率,因為提供者會在 Cmdlet 取得物件時套用它們,而不是在擷取對象之後讓 PowerShell 篩選物件。

參數屬性

類型:String
預設值:None
支援萬用字元:True
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Force

強制 Cmdlet 在用戶無法存取的物件上建立屬性。 實作會因提供者而異。 如需詳細資訊,請參閱 about_Providers

參數屬性

類型:SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Include

指定此 Cmdlet 在操作中包含的一個或多個專案,這些專案是以字串陣列的形式表示。 此參數的值對 路徑 參數進行限定。 輸入路徑元素或模式,例如 *.txt。 允許使用通配符字元。 只有當命令包含項目的內容,例如 時,C:\Windows\* 參數才有效,其中通配符會指定 C:\Windows 目錄的內容。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:True
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-LiteralPath

指定通往一個或多個位置的路徑。 LiteralPath 的值會按原本輸入的方式使用。 不會將任何字元解譯為通配符。 如果路徑包含逸出字元,請以單引弧括住它(')。 單引號會告知PowerShell不要將任何字元解譯為逸出序列。

如需詳細資訊,請參閱 about_Quoting_Rules

參數屬性

類型:

String[]

預設值:None
支援萬用字元:False
不要顯示:False
別名:PSPath, LP

參數集

LiteralPath
Position:Named
必要:True
來自管線的值:False
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-Name

指定新屬性的名稱。 如果屬性是登錄專案,此參數會指定項目的名稱。

參數屬性

類型:String
預設值:None
支援萬用字元:False
不要顯示:False
別名:PSProperty

參數集

(All)
Position:1
必要:True
來自管線的值:False
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-Path

指定項目的路徑。 允許使用通配符字元。 此參數會識別這個 Cmdlet 加入新屬性的專案。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:True
不要顯示:False

參數集

Path
Position:0
必要:True
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-PropertyType

指定這個 Cmdlet 新增的屬性類型。 此參數可接受的值為:

  • String:指定以 Null 結尾的字串。 用於 REG_SZ 值。
  • ExpandString:指定一個以 null 結尾的字串,其中包含在擷取值時展開的環境變數的未展開引用。 用於 REG_EXPAND_SZ 值。
  • Binary:以任何形式指定二進位數據。 用於 REG_BINARY 的值。
  • DWord:指定 32 位二進位數。 用於 REG_DWORD 值。
  • MultiString:指定以兩個 Null 字元結尾的 Null 終止字串陣列。 用於 REG_MULTI_SZ 值。
  • Qword:指定 64 位二進位數。 用於 REG_QWORD 值。
  • Unknown:表示不支援的登錄數據類型,例如 REG_RESOURCE_LIST 值。

參數屬性

類型:String
預設值:None
支援萬用字元:False
不要顯示:False
別名:類型

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-Value

指定屬性值。 如果屬性是登錄專案,此參數會指定專案的值。

參數屬性

類型:Object
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-WhatIf

顯示 Cmdlet 執行時會發生什麼事。 指令未執行。

參數屬性

類型:SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False
別名:無線

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

CommonParameters

此 Cmdlet 支援一般參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters

輸入

None

您不能將物件透過管道傳送到此 Cmdlet。

輸出

PSCustomObject

此 Cmdlet 會傳回代表新屬性的自定義物件。

備註

New-ItemProperty 的設計目的是要處理任何提供者所公開的數據。 若要列出工作階段中可用的提供者,請輸入 Get-PSProvider。 如需詳細資訊,請參閱 about_Providers