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


Update-TypeData

Обновляет данные расширенного типа во время сеанса.

Синтаксис

FileSet (по умолчанию)

Update-TypeData
    [[-AppendPath] <String[]>]
    [-PrependPath <String[]>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

DynamicTypeSet

Update-TypeData
    -TypeName <String>
    [-MemberType <PSMemberTypes>]
    [-MemberName <String>]
    [-Value <Object>]
    [-SecondValue <Object>]
    [-TypeConverter <Type>]
    [-TypeAdapter <Type>]
    [-SerializationMethod <String>]
    [-TargetTypeForDeserialization <Type>]
    [-SerializationDepth <Int32>]
    [-DefaultDisplayProperty <String>]
    [-InheritPropertySerializationSet <Nullable`1>]
    [-StringSerializationSource <String>]
    [-DefaultDisplayPropertySet <String[]>]
    [-DefaultKeyPropertySet <String[]>]
    [-PropertySerializationSet <String[]>]
    [-Force]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

TypeDataSet

Update-TypeData
    [-TypeData] <TypeData[]>
    [-Force]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Описание

Командлет Update-TypeData обновляет данные расширенного типа в сеансе, перезагрузив Types.ps1xml файлы в память и добавив новые данные расширенного типа.

По умолчанию PowerShell загружает данные расширенного типа по мере необходимости. Без параметров Update-TypeData перезагрузит все Types.ps1xml файлы, загруженные в сеансе, включая все добавленные файлы типов. Параметры можно использовать для добавления новых файлов типов и добавления и замены данных расширенного Update-TypeData типа.

Командлет Update-TypeData можно использовать для предварительной загрузки всех данных типа. Эта функция особенно полезна при разработке типов и требуется загрузить эти новые типы для тестирования.

Начиная с Windows PowerShell 3.0, можно использовать для Update-TypeData добавления и замены данных расширенного типа в сеансе без использования Types.ps1xml файла. Данные типа, добавляемые динамически, то есть без файла добавляются только в текущий сеанс. Чтобы добавить данные типа ко всем сеансам, добавьте Update-TypeData команду в профиль PowerShell. Дополнительные сведения см. в about_Profiles.

Кроме того, начиная с Windows PowerShell 3.0, можно использовать Get-TypeData командлет для получения расширенных типов в текущем сеансе и Remove-TypeData командлета для удаления расширенных типов из текущего сеанса.

Исключения, возникающие в свойствах или добавлении свойств в Update-TypeData команду, не сообщают об ошибках. Это позволяет подавлять исключения, которые будут возникать во многих распространенных типах во время форматирования и вывода. При получении свойств .NET можно обойти подавление исключений с помощью синтаксиса метода, как показано в следующем примере:

"hello".get_Length()

Обратите внимание, что синтаксис метода можно использовать только с свойствами .NET. Свойства, добавленные с помощью командлета Update-TypeData, не могут использовать синтаксис метода.

Дополнительные сведения о файлах Types.ps1xml в PowerShell см. в разделе about_Types.ps1xml.

Примеры

Пример 1. Обновление расширенных типов

Update-TypeData

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

Пример 2. Типы обновлений несколько раз

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

Первая команда обновляет конфигурацию расширенного Types.ps1xml типа из файлов, обрабатывая TypesA.types.ps1xml файлы и TypesB.types.ps1xml файлы.

Вторая команда показывает, как обновить TypesA.types.ps1xml повторно, например, если вы добавили или изменили тип в файле. Вы можете повторить предыдущую TypesA.types.ps1xml команду для Update-TypeData файла или выполнить команду без параметров, так как TypesA.types.ps1xml уже находится в списке файлов типов для текущего сеанса.

Update-TypeData -PrependPath TypesA.types.ps1xml, TypesB.types.ps1xml
Update-TypeData -PrependPath TypesA.types.ps1xml

Пример 3. Добавление свойства скрипта в объекты DateTime

В этом примере используется Update-TypeData для добавления свойства скрипта "Квартал" в объекты System.DateTime в текущем сеансе, например возвращаемых командлетомGet-Date.

$typeDataParams = @{
    TypeName   = 'System.DateTime'
    MemberType = 'ScriptProperty'
    MemberName = 'Quarter'
    Value      = {
        switch ($this.Month) {
            { $_ -in @(1, 2, 3) } { return 'Q1' }
            { $_ -in @(4, 5, 6) } { return 'Q2' }
            { $_ -in @(7, 8, 9) } { return 'Q3' }
            default               { return 'Q4' }
        }
    }
}
Update-TypeData @typeDataParams

(Get-Date).Quarter
Q1

Команда Update-TypeData использует параметр TypeName для указания типа System.DateTime, параметра MemberName, чтобы указать имя нового свойства, свойство MemberType, чтобы указать тип ScriptProperty и параметр Value, чтобы указать скрипт, определяющий годовой квартал.

Значение свойства Value — это скрипт, вычисляющий текущий годовой квартал. Блок скрипта использует $this автоматическую переменную для представления текущего экземпляра объекта и оператора In, чтобы определить, отображается ли значение месяца в каждом целочисленном массиве. Дополнительные сведения о операторе -in см. в about_Comparison_Operators.

Вторая команда получает новое свойство Квартал текущей даты.

Пример 4. Обновление типа, отображающегося в списках по умолчанию

В этом примере показано, как задать свойства типа, отображаемого в списках по умолчанию, то есть если свойства не указаны. Так как данные типа не указаны в Types.ps1xml файле, он действует только в текущем сеансе.

Get-Date | Format-List

Update-TypeData -TypeName "System.DateTime" -DefaultDisplayPropertySet @(
    'DateTime'
    'DayOfYear'
    'Quarter'
)

Get-Date | Format-List
DisplayHint : DateTime
Date        : 8/7/2024 12:00:00 AM
Day         : 7
DayOfWeek   : Wednesday
DayOfYear   : 220
Hour        : 10
Kind        : Local
Millisecond : 568
Microsecond : 308
Nanosecond  : 600
Minute      : 34
Month       : 8
Second      : 43
Ticks       : 638586236835683086
TimeOfDay   : 10:34:43.5683086
Year        : 2024
DateTime    : Wednesday, August 7, 2024 10:34:43 AM
Quarter     : Q3


DateTime  : Wednesday, August 7, 2024 10:34:43 AM
DayOfYear : 220
Quarter   : Q3

Первая команда показывает представление списка для Get-Date команды, которая выводит объект System.DateTime , представляющий текущую дату. Команда использует оператор конвейера (|) для отправки объекта DateTime командлету Format-List . Format-List Так как команда не указывает свойства, отображаемые в списке, PowerShell отображает каждое общедоступное, не скрытое свойство для объекта.

Вторая команда использует Update-TypeData командлет для задания свойств списка по умолчанию для типа System.DateTime . Команда использует параметр TypeName для указания типа и параметра DefaultDisplayPropertySet, чтобы указать свойства по умолчанию для списка. Выбранные свойства включают новое свойство скрипта Квартал , добавленное в предыдущем примере.

Последняя команда получает текущую дату и снова отображает ее в формате списка. Он отображает только свойства, определенные в команде Update-TypeData , а не полный список свойств.

Пример 5. Задание свойства тип отображается в широком формате

В этом примере показано, как создать новое свойство скрипта и использовать его в качестве свойства по умолчанию, отображаемого при передаче типа командлету Format-Wide .

Get-Command *File* | Format-Wide
Set-AppPackageProvisionedDataFile                            Set-ProvisionedAppPackageDataFile
Set-ProvisionedAppXDataFile                                  Write-FileSystemCache
Write-FileSystemCache                                        Add-PoshGitToProfile
Block-FileShareAccess                                        Clear-FileStorageTier
Close-SmbOpenFile                                            Debug-FileShare
Disable-NetIPHttpsProfile                                    Enable-NetIPHttpsProfile
Get-FileIntegrity                                            Get-FileShare
Get-FileShareAccessControlEntry                              Get-FileStorageTier
Get-NetConnectionProfile                                     Get-NetFirewallHyperVProfile
Get-NetFirewallProfile                                       Get-SmbOpenFile
Get-StorageFileServer                                        Get-SupportedFileSystems
Grant-FileShareAccess                                        New-FileShare
New-NetFirewallHyperVProfile                                 New-ScriptFileInfo
New-ScriptFileInfo                                           New-StorageFileServer
Publish-BCFileContent                                        Remove-FileShare
Remove-NetFirewallHyperVProfile                              Remove-PoshGitFromProfile
Remove-StorageFileServer                                     Repair-FileIntegrity
Revoke-FileShareAccess                                       Set-FileIntegrity
Set-FileShare                                                Set-FileStorageTier
Set-NetConnectionProfile                                     Set-NetFirewallHyperVProfile
Set-NetFirewallProfile                                       Set-StorageBusProfile
Set-StorageFileServer                                        Test-ScriptFileInfo
Test-ScriptFileInfo                                          Unblock-FileShareAccess
Update-ScriptFileInfo                                        Update-ScriptFileInfo
Add-BitsFile                                                 Get-AppLockerFileInformation
Get-FileHash                                                 Get-PSScriptFileInfo
Import-PowerShellDataFile                                    New-FileCatalog
New-PSRoleCapabilityFile                                     New-PSScriptFileInfo
New-PSSessionConfigurationFile                               New-TemporaryFile
Out-File                                                     Set-AppXProvisionedDataFile
Test-FileCatalog                                             Test-PSScriptFileInfo
Test-PSSessionConfigurationFile                              Unblock-File
Update-PSScriptFileInfo                                      FileDialogBroker.exe
FileHistory.exe                                              forfiles.exe
openfiles.exe
$typeDataParams = @{
    TypeName               = 'System.Management.Automation.CommandInfo'
    DefaultDisplayProperty = 'FullyQualifiedName'
    MemberType             = 'ScriptProperty'
    MemberName             = 'FullyQualifiedName'
    Value                  = {
        [OutputType([string])]
        param()

        # For executables, return the path to the application.
        if ($this -is [System.Management.Automation.ApplicationInfo]) {
            return $this.Path
        }

        # For commands defined outside a module, return only the name.
        if ([string]::IsNullOrEmpty($this.ModuleName)) {
            return $this.Name
        }

        # Return the fully-qualified command name "<ModuleName>\<CommandName>"
        return '{0}\{1}' -f $this.ModuleName, $this.Name
    }
}
Update-TypeData @typeDataParams

Get-Command *File* | Format-Wide
Dism\Set-AppPackageProvisionedDataFile                       Dism\Set-ProvisionedAppPackageDataFile
Dism\Set-ProvisionedAppXDataFile                             Storage\Write-FileSystemCache
VMDirectStorage\Write-FileSystemCache                        posh-git\Add-PoshGitToProfile
Storage\Block-FileShareAccess                                Storage\Clear-FileStorageTier
SmbShare\Close-SmbOpenFile                                   Storage\Debug-FileShare
NetworkTransition\Disable-NetIPHttpsProfile                  NetworkTransition\Enable-NetIPHttpsProfile
Storage\Get-FileIntegrity                                    Storage\Get-FileShare
Storage\Get-FileShareAccessControlEntry                      Storage\Get-FileStorageTier
NetConnection\Get-NetConnectionProfile                       NetSecurity\Get-NetFirewallHyperVProfile
NetSecurity\Get-NetFirewallProfile                           SmbShare\Get-SmbOpenFile
Storage\Get-StorageFileServer                                Storage\Get-SupportedFileSystems
Storage\Grant-FileShareAccess                                Storage\New-FileShare
NetSecurity\New-NetFirewallHyperVProfile                     PowerShellGet\New-ScriptFileInfo
PowerShellGet\New-ScriptFileInfo                             Storage\New-StorageFileServer
BranchCache\Publish-BCFileContent                            Storage\Remove-FileShare
NetSecurity\Remove-NetFirewallHyperVProfile                  posh-git\Remove-PoshGitFromProfile
Storage\Remove-StorageFileServer                             Storage\Repair-FileIntegrity
Storage\Revoke-FileShareAccess                               Storage\Set-FileIntegrity
Storage\Set-FileShare                                        Storage\Set-FileStorageTier
NetConnection\Set-NetConnectionProfile                       NetSecurity\Set-NetFirewallHyperVProfile
NetSecurity\Set-NetFirewallProfile                           StorageBusCache\Set-StorageBusProfile
Storage\Set-StorageFileServer                                PowerShellGet\Test-ScriptFileInfo
PowerShellGet\Test-ScriptFileInfo                            Storage\Unblock-FileShareAccess
PowerShellGet\Update-ScriptFileInfo                          PowerShellGet\Update-ScriptFileInfo
BitsTransfer\Add-BitsFile                                    AppLocker\Get-AppLockerFileInformation
Microsoft.PowerShell.Utility\Get-FileHash                    Microsoft.PowerShell.PSResourceGet\Get-PSScriptFileInfo
Microsoft.PowerShell.Utility\Import-PowerShellDataFile       Microsoft.PowerShell.Security\New-FileCatalog
Microsoft.PowerShell.Core\New-PSRoleCapabilityFile           Microsoft.PowerShell.PSResourceGet\New-PSScriptFileInfo
Microsoft.PowerShell.Core\New-PSSessionConfigurationFile     Microsoft.PowerShell.Utility\New-TemporaryFile
Microsoft.PowerShell.Utility\Out-File                        Dism\Set-AppXProvisionedDataFile
Microsoft.PowerShell.Security\Test-FileCatalog               Microsoft.PowerShell.PSResourceGet\Test-PSScriptFileInfo
Microsoft.PowerShell.Core\Test-PSSessionConfigurationFile    Microsoft.PowerShell.Utility\Unblock-File
Microsoft.PowerShell.PSResourceGet\Update-PSScriptFileInfo   C:\WINDOWS\system32\FileDialogBroker.exe
C:\WINDOWS\system32\FileHistory.exe                          C:\WINDOWS\system32\forfiles.exe
C:\WINDOWS\system32\openfiles.exe

Первая команда использует Get-Command командлет для возврата каждой команды с именем, содержащим слово File. Он передает выходные данные Format-Wide командлету, в котором отображаются имена команд в столбцах.

Далее пример используется Update-TypeData для определения свойства DefaultDisplayProperty и нового свойства скрипта для типа CommandInfo . Выходные данные для Get-Command возвращаемых объектов и объектов CommandInfo , производных от этого типа. Новое свойство скрипта FullQualifiedName возвращает полный путь к исполняемым приложениям и полное имя командлетов, которое префиксирует имя командлета с помощью модуля, определяющего его. Командлет Update-TypeData может определить новое свойство скрипта и использовать его в качестве defaultDisplayProperty в той же команде.

Наконец, выходные данные показывают результаты Get-Command отображения в широком формате после обновления типа. В нем отображается полное имя командлетов и полный путь к исполняемым приложениям.

Пример 6. Обновление данных типа для объекта с каналом

$typeDataParams = @{
    MemberType = 'ScriptProperty'
    MemberName = 'SupportsUpdatableHelp'
    Value      = {
        [OutputType([bool])]
        param()

        return (-not [string]::IsNullOrEmpty($this.HelpInfoUri))
    }
}
Get-Module Microsoft.PowerShell.Utility | Update-TypeData @typeDataParams

Get-Module -ListAvailable -Name Microsoft.PowerShell.* |
    Format-Table Name, SupportsUpdatableHelp
Name                                      SupportsUpdatableHelp
----                                      ---------------------
Microsoft.PowerShell.Archive                               True
Microsoft.PowerShell.Diagnostics                           True
Microsoft.PowerShell.Host                                  True
Microsoft.PowerShell.Management                            True
Microsoft.PowerShell.PSResourceGet                         True
Microsoft.PowerShell.Security                              True
Microsoft.PowerShell.Utility                               True
Microsoft.PowerShell.Operation.Validation                  True
Microsoft.PowerShell.LocalAccounts                         True

В этом примере показано, что при канале объекта Update-TypeDataUpdate-TypeData добавляется расширенные данные типа для типа объекта.

Этот метод быстрее, чем с помощью командлета Get-MemberGet-Type или метода для получения типа объекта. Однако при канале коллекции объектов Update-TypeDataон обновляет данные типа первого типа объекта, а затем возвращает ошибку для всех остальных объектов в коллекции, так как элемент уже определен в типе.

Первая команда использует Get-Module командлет для получения модуля Microsoft.PowerShell.Utility . Командный объект передает объект Update-TypeData модуля командлету, который обновляет данные типа для типа System.Management.Automation.PSModuleInfo и типы, производные от него, например тип ModuleInfoGrouping , который Get-Module возвращается при использовании параметра ListAvailable в команде.

Команды Update-TypeData добавляют свойство скрипта SupportsUpdatableHelp ко всем импортированным модулям. Значение параметра Value — это скрипт, который возвращает $true , если свойство HelpInfoUri модуля заполняется и в $false противном случае.

Вторая команда передает объекты модуля из Get-ModuleFormat-Table командлета, в котором отображаются свойства Name и SupportsUpdatableHelp доступных модулей.

Параметры

-AppendPath

Указывает путь к необязательным .ps1xml файлам. Указанные файлы загружаются в том порядке, в который они перечислены после загрузки встроенных файлов. Можно также передать в .

Свойства параметра

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:PSPath, Путь

Наборы параметров

FileSet
Position:0
Обязательно:False
Значение из конвейера:True
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-Confirm

Запрашивает подтверждение перед запуском cmdlet.

Свойства параметра

Тип:SwitchParameter
Default value:False
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:cf

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-DefaultDisplayProperty

Указывает свойство типа, отображаемого командлетом Format-Wide , если другие свойства не указаны.

Введите имя стандартного или расширенного свойства типа. Значение этого параметра может быть именем типа, добавленного в ту же команду.

Это значение действует только в том случае, если для типа в файле нет широких представлений Format.ps1xml .

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-DefaultDisplayPropertySet

Указывает одно или несколько свойств типа. Эти свойства отображаются командлетами Format-ListFormat-Table, а Format-Custom командлеты не указываются.

Введите имена стандартных или расширенных свойств типа. Значение этого параметра может быть именами типов, добавленных в ту же команду.

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

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-DefaultKeyPropertySet

Указывает одно или несколько свойств типа. Эти свойства используются Group-Object командлетами, Sort-Object если другие свойства не указаны.

Введите имена стандартных или расширенных свойств типа. Значение этого параметра может быть именами типов, добавленных в ту же команду.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Force

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

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False
TypeDataSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-InheritPropertySerializationSet

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

  • $true. набор свойств наследуется.
  • $false. набор свойств не наследуется.
  • $null. наследование не определено.

Этот параметр действителен только в том случае, если значение параметра SerializationMethod равно SpecificProperties. Если значение этого параметра равно $false, требуется параметр PropertySerializationSet .

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:

Nullable<T>[Boolean]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-MemberName

Указывает имя свойства или метода.

Используйте этот параметр с параметрамиTypeName , MemberType, Value и SecondValue для добавления или изменения свойства или метода типа.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-MemberType

Указывает тип элемента для добавления или изменения.

Используйте этот параметр с параметрамиTypeName , MemberType, Value и SecondValue для добавления или изменения свойства или метода типа. Допустимые значения для этого параметра:

  • ПсевдонимProperty
  • CodeMethod
  • CodeProperty
  • Примечаниеproperty
  • ScriptMethod
  • ScriptProperty

Сведения об этих значениях см. в разделе "Перечисление PSMemberTypes".

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:PSMemberTypes
Default value:None
Допустимые значения:NoteProperty, AliasProperty, ScriptProperty, CodeProperty, ScriptMethod, CodeMethod
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-PrependPath

Указывает путь к необязательным .ps1xml файлам. Указанные файлы загружаются в том порядке, в который они перечислены перед загрузкой встроенных файлов.

Свойства параметра

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

FileSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-PropertySerializationSet

Задает имена свойств, сериализованных. Используйте этот параметр, если значение параметра SerializationMethod SpecificProperties.

Свойства параметра

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-SecondValue

Задает дополнительные значения для AliasProperty, ScriptProperty, CodePropertyили элементов CodeMethod.

Используйте этот параметр с параметрами TypeName, MemberType, Value и SecondValue, чтобы добавить или изменить свойство или метод типа.

Если значение параметра MemberType равно AliasProperty, значение параметра SecondValue должно быть типом данных. PowerShell преобразует (то есть приводит) значение свойства псевдонима к указанному типу. Например, если добавить свойство псевдонима, которое предоставляет альтернативное имя строкового свойства, можно также указать значение SecondValuesystem.Int32 , чтобы преобразовать псевдоним строковое значение в целое число.

Если значение параметра MemberType имеет значение ScriptProperty, можно использовать параметр SecondValue для указания дополнительного блока скрипта. Блок скрипта в значении параметра value получает значение переменной. Блок скрипта в значении параметра SecondValue задает значение переменной.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:Object
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-SerializationDepth

Указывает, сколько уровней объектов типа сериализуются в виде строк. Значение 1 по умолчанию сериализует объект и его свойства. Значение сериализации 0 объекта, но не его свойств. Значение сериализации 2 объекта, его свойств и любых объектов в значениях свойств.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:Int32
Default value:1
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-SerializationMethod

Задает метод сериализации для типа. Метод сериализации определяет, какие свойства типа сериализуются, а также метод, используемый для их сериализации. Допустимые значения для этого параметра:

  • AllPublicProperties. сериализуются все открытые свойства типа. Для определения сериализации дочерних свойств можно использовать параметр SerializationDepth.
  • String. типа сериализуется в виде строки. Можно использовать StringSerializationSource, чтобы указать свойство типа, используемого в качестве результата сериализации. В противном случае тип сериализуется с помощью метода ToString объекта.
  • SpecificProperties. Сериализируйте только указанные свойства этого типа. Используйте параметр PropertySerializationSet, чтобы указать свойства сериализованного типа. Можно также использовать параметр InheritPropertySerializationSet, чтобы определить, наследуется ли набор свойств и параметр SerializationDepth, чтобы определить, сериализуются ли дочерние свойства.

В PowerShell методы сериализации хранятся во внутренних объектах PSStandardMembers .

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-StringSerializationSource

Задает имя свойства типа. Значение указанного свойства используется в качестве результата сериализации. Этот параметр действителен, только если значение параметра SerializationMethod имеет значение String.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-TargetTypeForDeserialization

Указывает тип, в который преобразуется объект этого типа при десериализации.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:Type
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-TypeAdapter

Указывает тип адаптера типа, например Microsoft.PowerShell.Cim.CimInstanceAdapter. Адаптер типа позволяет PowerShell получать элементы типа.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:Type
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-TypeConverter

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

Введите значение System.Type, которое является производным от классов System.ComponentModel.TypeConverter или System.Management.Automation.PSTypeConverter.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:Type
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-TypeData

Указывает массив данных типа, которые этот командлет добавляет в сеанс. Введите переменную, содержащую объект TypeData или команду, которая получает объект TypeData, например Get-TypeData команду. Можно также передать в .

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:

TypeData[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

TypeDataSet
Position:0
Обязательно:True
Значение из конвейера:True
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-TypeName

Указывает имя расширения типа.

Для типов в пространстве имен System введите короткое имя. В противном случае необходимо полное имя типа. Подстановочные знаки не поддерживаются.

Имена типов можно передавать в Update-TypeData. При отправке объекта Update-TypeDataUpdate-TypeData в объект возвращает имя типа объекта и тип данных типа в тип объекта.

Используйте этот параметр с параметрамиmemberName , MemberType, Value и SecondValue для добавления или изменения свойства или метода типа.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:True
Значение из конвейера:True
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Value

Указывает значение свойства или метода.

Если вы добавляете AliasProperty, CodePropertyScriptPropertyили CodeMethod член, можно использовать параметр SecondValue для добавления дополнительных сведений.

Используйте этот параметр с параметрамиmemberName , MemberType, Value и SecondValue для добавления или изменения свойства или метода типа.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметра

Тип:Object
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-WhatIf

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

Свойства параметра

Тип:SwitchParameter
Default value:False
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:wi

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

CommonParameters

Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.

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

String

Можно передать строку, содержащую значения параметров AppendPath, TypeName или TypeData , в этот командлет.

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

None

Этот командлет не возвращает выходные данные.