Поделиться через


Set-Item

Изменяет значение элемента на значение, указанное в команде.

Синтаксис

Set-Item
   [-Path] <String[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-Item
   -LiteralPath <String[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-Item
   [-Path] <string[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-Options <ScopedItemOptions>]
   [<CommonParameters>]
Set-Item
   [[-Value] <Object>]
   -LiteralPath <string[]>
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-Options <ScopedItemOptions>]
   [<CommonParameters>]
Set-Item
   [-Path] <string[]>
   [[-Value] <Object>]
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-Type <RegistryValueKind>]
   [<CommonParameters>]
Set-Item
   [[-Value] <Object>]
   -LiteralPath <string[]>
   [-Force]
   [-PassThru]
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Credential <pscredential>]
   [-WhatIf]
   [-Confirm]
   [-Type <RegistryValueKind>]
   [<CommonParameters>]

Описание

Командлет Set-Item изменяет значение элемента, например переменной или раздела реестра, на значение, указанное в команде .

Примеры

Пример 1. Create псевдонима

Эта команда создает псевдоним np для Блокнота.

Set-Item -Path alias:np -Value "c:\windows\notepad.exe"

Пример 2. Изменение значения переменной среды

Эта команда изменяет значение переменной среды UserRole на Administrator.

Set-Item -Path env:UserRole -Value "Administrator"

Пример 3. Изменение функции запроса

Эта команда изменяет функцию командной строки, чтобы она отображала время до пути.

Set-Item -Path function:prompt -Value {'PS '+ (Get-Date -Format t) + " " + (Get-Location) + '> '}

Пример 4. Установка параметров для функции запроса

Эта команда задает параметры AllScope и ReadOnly для функции prompt. В этой команде используется динамический параметр Options объекта Set-Item. Параметр Options доступен в Set-Item только при его использовании с поставщиком псевдонима или функции .

Set-Item -Path function:prompt -Options "AllScope,ReadOnly"

Параметры

-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, который поддерживает использование фильтров. Синтаксис языка фильтра FileSystem можно найти в about_Wildcards. Фильтры более эффективны, чем другие параметры, так как поставщик применяет их, когда командлет получает объекты, а не фильтрует объекты PowerShell после их извлечения.

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

-Force

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

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

-Options

Это динамический параметр, доступный поставщиками псевдонимов и функций . Дополнительные сведения см. в разделе about_Alias_Provider и about_Function_Provider.

Задает значение свойства Options псевдонима.

Допустимые значения:

  • None: псевдоним не имеет ограничений (значение по умолчанию)
  • ReadOnly: псевдоним можно удалить, но изменить без использования параметра Force .
  • Constant: псевдоним нельзя удалить или изменить.
  • Private: псевдоним доступен только в текущем область
  • AllScope: псевдоним копируется во все новые области, которые создаются.
  • Unspecified: параметр не указан.
Type:ScopedItemOptions
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

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

Type:SwitchParameter
Position:Named
Default value:False
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: задает строку, завершающуюся нулевым значением, которая содержит нерасширенные ссылки на переменные среды, которые разворачиваются при извлечении значения. Используется для 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:1
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

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

Object

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

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

None

По умолчанию этот командлет не возвращает выходные данные.

Object

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

Примечания

PowerShell включает следующие псевдонимы для Set-Item:

  • Для всех платформ.

    • si
  • Set-Item не поддерживается поставщиком файловой системы PowerShell. Чтобы изменить значения элементов в файловой системе, используйте Set-Content командлет .

  • В дисках реестра HKLM: и HKCU:Set-Item изменяет данные в значении (по умолчанию) раздела реестра.

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