Set-ItemProperty
Создает или изменяет значение свойства элемента.
Синтаксис
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>]
Описание
Командлет Set-ItemProperty
изменяет значение свойства указанного элемента.
Его можно использовать для установки и изменения свойств элементов.
Например, можно использовать Set-ItemProperty
для задания значения свойства IsReadOnly объекта $True
файла.
Вы также используете Set-ItemProperty
для создания и изменения значений реестра и данных.
Например, с его помощью можно добавить в раздел реестра новую запись и установить или изменить ее значение.
Примеры
Пример 1. Установка свойства файла
Эта команда задает значение свойства IsReadOnly файла "final.doc" значение true. Он использует путь для указания файла, имени , чтобы указать имя свойства и параметр Value , чтобы указать новое значение.
Файл является объектом System.IO.FileInfo и IsReadOnly является одним из его свойств.
Чтобы просмотреть все свойства, введите Get-Item C:\GroupFiles\final.doc | Get-Member -MemberType Property
.
Автоматическая $true
переменная представляет значение TRUE. Дополнительные сведения см. в статье about_Automatic_Variables.
Set-ItemProperty -Path C:\GroupFiles\final.doc -Name IsReadOnly -Value $true
Пример 2. Создание записи и значения реестра
В этом примере показано, как создать Set-ItemProperty
новую запись реестра и назначить значение записи. Он создает запись NoOfEmployees в ключе HKLM\Software
ContosoCompany и задает значение 823.
Так как записи реестра считаются свойствами разделов реестра, которые являются элементами, используются 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
Первая команда создает запись реестра.
Он использует путь для указания пути HKLM:
диска и Software\MyCompany
ключа.
Команда использует имя , чтобы указать имя записи и значение , чтобы указать значение.
Вторая команда использует Get-ItemProperty
командлет для просмотра новой записи реестра.
При использовании Get-Item
командлетов Get-ChildItem
записи не отображаются, так как они являются свойствами ключа, а не элементами или дочерними элементами.
Третья команда изменяет значение записи NoOfEmployees на 824.
Можно также использовать New-ItemProperty
командлет для создания записи реестра и его значения, а затем использовать Set-ItemProperty
для изменения значения.
Дополнительные сведения о HKLM:
диске введите Get-Help Get-PSDrive
.
Дополнительные сведения об использовании PowerShell для управления реестром введите Get-Help Registry
.
Пример 3. Изменение элемента с помощью конвейера
В примере используется Get-ChildItem
для получения weekly.txt
файла. Объект файла передан Set-ItemProperty
в . Команда Set-ItemProperty
использует параметры Name и Value, чтобы указать свойство и новое значение.
Get-ChildItem weekly.txt | Set-ItemProperty -Name IsReadOnly -Value $True
Параметры
-Confirm
Запрос подтверждения перед выполнением командлета.
Тип: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Credential
Примечание.
Этот параметр не поддерживается поставщиками, установленными с помощью PowerShell. Чтобы олицетворить другого пользователя или повысить свои учетные данные при выполнении этого командлета, используйте Invoke-Command.
Тип: | PSCredential |
Position: | Named |
Default value: | Current user |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Exclude
Указывает как строковый массив, элемент или элементы, которые этот командлет исключает в операции. Значение этого параметра определяет параметр Path. Введите элемент пути или шаблон, например *.txt
. Можно использовать подстановочные знаки. Параметр Exclude действует только в том случае, если команда включает содержимое элемента, напримерC:\Windows\*
, где подстановочный знак указывает содержимое C:\Windows
каталога.
Тип: | String[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | True |
-Filter
Указывает фильтр для квалификации параметра Path . Поставщик FileSystem — единственный установленный поставщик PowerShell, поддерживающий использование фильтров. Синтаксис языка фильтра FileSystem можно найти в about_Wildcards. Фильтры более эффективны, чем другие параметры, так как поставщик применяет их, когда командлет получает объекты, а не фильтрует объекты После их получения.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | True |
-Force
Заставляет командлет задать свойство для элементов, к которым не удается получить доступ пользователю. Реализация зависит от поставщика. Дополнительные сведения см. в about_Providers.
Тип: | SwitchParameter |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Include
Указывает, как строковый массив, элемент или элементы, которые этот командлет включает в операцию. Значение этого параметра определяет параметр Path. Введите элемент пути или шаблон, например "*.txt"
. Можно использовать подстановочные знаки. Параметр Include действует только в том случае, если команда содержит содержимое элемента, например C:\Windows\*
, где подстановочный знак указывает содержимое C:\Windows
каталога.
Тип: | String[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | True |
-InputObject
Указывает объект, имеющий свойства, которые изменяются этим командлетом. Введите переменную, содержащую объект, либо команду, которая его возвращают.
Тип: | PSObject |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-LiteralPath
Указывает путь к одному или нескольким расположениям. Значение LiteralPath используется точно так же, как он типизированный. Никакие символы не интерпретируются как знаки подстановки. Если путь содержит escape-символы, заключите его в одинарные кавычки. Одинарные кавычки говорят PowerShell не интерпретировать какие-либо символы как escape-последовательности.
Дополнительные сведения см. в about_Quoting_Rules.
Тип: | String[] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Name
Задает имя свойства.
Тип: | String |
Aliases: | PSProperty |
Position: | 1 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-PassThru
Возвращает объект, представляющий свойство элемента. По умолчанию этот командлет не создает выходные данные.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Path
Указывает путь к элементам со свойством для изменения. Можно использовать подстановочные знаки.
Тип: | String[] |
Position: | 0 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | True |
-Type
Это динамический параметр, доступный поставщиком реестра . Поставщик реестра и этот параметр доступны только в Windows.
Указывает тип свойства, добавляемого этим командлетом. Допустимые значения для этого параметра:
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 значения.
Тип: | RegistryValueKind |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Value
Задает значение свойства.
Тип: | Object |
Position: | 2 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-WhatIf
Показывает, что произойдет при запуске командлета. Командлет не выполняется.
Тип: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
Объекты можно передать в этот командлет.
Выходные данные
None
По умолчанию этот командлет не возвращает выходные данные.
При использовании параметра PassThru этот командлет возвращает объект PSCustomObject , представляющий измененный элемент и его новое значение свойства.
Примечания
PowerShell включает следующие псевдонимы для Set-ItemProperty
:
- Все платформы:
sp
Set-ItemProperty
предназначен для работы с данными, предоставляемыми любым поставщиком. Чтобы вывести список поставщиков, доступных в данном сеансе, введите командлет Get-PSProvider
. Дополнительные сведения см. в about_Providers.
Связанные ссылки
PowerShell