New-ItemProperty

Создает новое свойство для элемента и задает его значение.

Синтаксис

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

Описание

Командлет New-ItemProperty создает новое свойство для указанного элемента и задает его значение. Как правило, этот командлет используется для создания новых значений реестра, так как значения реестра являются свойствами элемента раздела реестра.

Этот командлет не добавляет свойства в объект.

  • Чтобы добавить свойство в экземпляр объекта, используйте Add-Member командлет.
  • Чтобы добавить свойство ко всем объектам определенного типа, измените файл Types.ps1xml.

Примеры

Пример 1. Добавление записи реестра

Эта команда добавляет новую запись реестра в NoOfEmployeesMyCompany раздел раздела HKLM:\Software hive.

Первая команда использует параметр Path для указания пути MyCompany раздела реестра. Он использует параметр Name для указания имени записи и параметра Value , чтобы указать его значение.

Вторая команда использует Get-ItemProperty командлет для просмотра новой записи реестра.

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 командлет для получения MyCompany раздела реестра. Оператор конвейера отправляет результаты команды New-ItemProperty, в которую добавляется новая запись реестра (NoOfLocations) и его значение (3) в MyCompany ключ.

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

Эта команда работает, так как функция привязки параметров PowerShell связывает путь объекта RegistryKey, возвращающегося Get-Item с параметром New-ItemPropertyLiteralPath. Дополнительные сведения см. в about_Pipelines.

Пример 3. Создание значения MultiString в реестре с помощью строки здесь

В этом примере создается MultiString значение с помощью строки here-String.

$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.multistring

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

Запрос подтверждения перед выполнением командлета.

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

-Credential

Указывает учетную запись пользователя с разрешением на выполнение этого действия. По умолчанию используется текущий пользователь.

Введите имя пользователя, например User01 или Domain01\User01или введите объект PSCredential , например, созданный командлетом Get-Credential . Если ввести имя пользователя, вам будет предложено ввести пароль.

Примечание.

Этот параметр не поддерживается поставщиками, установленными с помощью PowerShell. Чтобы олицетворить другого пользователя или повысить свои учетные данные при выполнении этого командлета, используйте Invoke-Command.

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

-Exclude

Указывает как строковый массив, элемент или элементы, которые этот командлет исключает в операции. Значение этого параметра определяет параметр Path. Введите элемент пути или шаблон, например *.txt. Можно использовать подстановочные знаки. Параметр Exclude действует только в том случае, если команда содержит содержимое элемента, напримерC:\Windows\*, где дикий карта символ указывает содержимое C:\Windows каталога.

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

-Filter

Указывает фильтр для квалификации параметра Path . Поставщик FileSystem — единственный установленный поставщик PowerShell, поддерживающий использование фильтров. Синтаксис языка фильтра FileSystem можно найти в about_Wild карта. Фильтры более эффективны, чем другие параметры, так как поставщик применяет их, когда командлет получает объекты, а не фильтрует объекты После их получения.

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

-Force

Принудительно заставляет командлет создать свойство объекта, к которому не удается получить доступ пользователю. Применение этого параметра зависит от конкретного поставщика. Дополнительные сведения см. в about_Providers.

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

-Include

Указывает, как строковый массив, элемент или элементы, которые этот командлет включает в операцию. Значение этого параметра определяет параметр Path. Введите элемент пути или шаблон, например *.txt. Можно использовать подстановочные знаки. Параметр Include действует только в том случае, если команда включает содержимое элемента, напримерC:\Windows\*, где дикий карта символ указывает содержимое C:\Windows каталога.

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

-LiteralPath

Указывает путь к одному или нескольким расположениям. Значение LiteralPath используется точно так же, как он типизированный. Никакие символы не интерпретируются как знаки подстановки. Если путь содержит escape-символы, заключите его в одинарные кавычки ('). Одинарные кавычки говорят PowerShell не интерпретировать какие-либо символы как escape-последовательности.

Дополнительные сведения см. в about_Quoting_Rules.

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

-Name

Задает имя для нового свойства. Если свойство является записью реестра, этот параметр задает имя записи.

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

-Path

Указывает путь к элементу. Можно использовать подстановочные знаки. Этот параметр определяет элемент, в который этот командлет добавляет новое свойство.

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

-PropertyType

Указывает тип свойства, добавляемого этим командлетом. Допустимые значения для этого параметра:

  • 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 значения.
Type:String
Aliases:Type
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Value

Задает значение свойства. Если свойство является записью реестра, этот параметр указывает значение записи.

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

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

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

Входные данные

None

Невозможно передать объекты в этот командлет.

Выходные данные

PSCustomObject

Этот командлет возвращает пользовательский объект, представляющий новое свойство.

Примечания

New-ItemProperty предназначен для работы с данными, предоставляемыми любым поставщиком. Чтобы вывести список поставщиков, доступных в данном сеансе, введите командлет Get-PSProvider. Дополнительные сведения см. в about_Providers.