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. Он использует path для указания файла, Name — имя, чтобы указать имя свойства, и параметр 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. Create записи и значения реестра
В этом примере показано, как создать Set-ItemProperty
новую запись реестра и назначить ей значение. Он создает запись NoOfEmployees в ключе ContosoCompany и HKLM\Software
задает для нее значение 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
Первая команда создает запись реестра.
Он использует path для указания пути к диску 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. Изменение элемента с помощью конвейера
В этом примере для получения weekly.txt
файла используется Get-ChildItem
. Объект файла передается в Set-ItemProperty
. Команда Set-ItemProperty
использует параметры Name и Value для указания свойства и его нового значения.
Get-ChildItem weekly.txt | Set-ItemProperty -Name IsReadOnly -Value $True
Параметры
-Confirm
Запрос подтверждения перед выполнением командлета.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-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, поддерживающий использование фильтров. Синтаксис языка фильтрации файловой системы можно найти в about_Wildcards. Фильтры более эффективны, чем другие параметры, так как поставщик применяет их, когда командлет получает объекты, а не фильтрует объекты PowerShell после их извлечения.
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 |
-InputObject
Указывает объект , свойства которого изменяются этим командлетом. Введите переменную, содержащую объект, либо команду, которая его возвращают.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-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 |
-PassThru
Возвращает объект , представляющий свойство элемента. По умолчанию этот командлет не создает выходные данные.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Указывает путь к элементам со свойством для изменения. Можно использовать подстановочные знаки.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | 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 значения.
Type: | RegistryValueKind |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Value
Задает значение свойства.
Type: | Object |
Position: | 2 |
Default value: | None |
Required: | True |
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
По умолчанию этот командлет не возвращает выходные данные.
При использовании параметра PassThru этот командлет возвращает объект PSCustomObject , представляющий измененный элемент и его новое значение свойства.
Примечания
PowerShell включает следующие псевдонимы для Set-ItemProperty
:
- Для всех платформ.
sp
Set-ItemProperty
предназначен для работы с данными, предоставляемыми любым поставщиком. Чтобы вывести список поставщиков, доступных в данном сеансе, введите командлет Get-PSProvider
. Дополнительные сведения см. в разделе about_Providers.