次の方法で共有


Update-TypeData

セッションで、拡張型データを更新します。

構文

Update-TypeData
      [[-AppendPath] <String[]>]
      [-PrependPath <String[]>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-TypeData
      [-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[]>]
      -TypeName <String>
      [-Force]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-TypeData
      [-Force]
      [-TypeData] <TypeData[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

説明

コマンドレットは Update-TypeData 、ファイルをメモリに再読み込みし、新しい拡張型データを Types.ps1xml 追加することで、セッション内の拡張型データを更新します。

既定では、PowerShell は必要に応じて拡張型データを読み込みます。 パラメーターを指定しない場合は、 Update-TypeData 追加したすべての Types.ps1xml 型ファイルを含め、セッションに読み込まれたすべてのファイルを再読み込みします。 パラメーター Update-TypeData を使用して、新しい型ファイルを追加したり、拡張型データを追加および置換したりできます。

コマンドレットを Update-TypeData 使用して、すべての型データを事前に読み込むことができます。 この機能は、型を開発し、テスト目的でそれらの新しい型を読み込むときに特に役立ちます。

Windows PowerShell 3.0 以降では、ファイルを使用せずに、セッション内の拡張型データの追加と置換に使用Update-TypeDataTypes.ps1xmlできます。 動的、つまりファイルを使用せずに追加される型データは、現在のセッションのみに追加されます。 すべてのセッションに型データを追加するには、PowerShell プロファイルに Update-TypeData コマンドを追加します。 詳細については、「about_Profiles」を参照してください。

また、Windows PowerShell 3.0 以降では、コマンドレットを Get-TypeData 使用して現在のセッションの拡張型を取得し、コマンドレットを Remove-TypeData 使用して現在のセッションから拡張型を削除できます。

プロパティで発生する例外、またはプロパティをコマンドに追加した場合の Update-TypeData 例外は、エラーを報告しません。 これは、書式設定および出力の際に、多くの一般的な型で発生する例外を抑制します。 .NET プロパティを取得する場合は、次の例に示すように、代わりにメソッド構文を使用して例外の抑制を回避できます。

"hello".get_Length()

メソッドの構文は、.NET プロパティでのみ使用できることに注意してください。 コマンドレットを実行 Update-TypeData して追加されたプロパティは、メソッド構文を使用できません。

PowerShell のTypes.ps1xmlファイルの詳細については、「about_Types.ps1xml」を参照してください

例 1: 拡張型を更新する

Update-TypeData

このコマンドは、セッションで既に Types.ps1xml 使用されているファイルから拡張型の構成を更新します。

例 2: 型を複数回更新する

この例では、同じセッションで型ファイル内の型を複数回更新する方法を示します。

最初のコマンドは、拡張型の構成をファイルから更新しTypes.ps1xml、最初にファイルとTypesB.types.ps1xmlファイルをTypesA.types.ps1xml処理します。

2 番目のコマンドは、ファイル内の型を 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 オブジェクト (コマンドレットから返されたものなど) に Quarter スクリプト プロパティを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を参照してください

2 番目のコマンドは、現在の日付の新しい Quarter プロパティを取得します。

例 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 では、オブジェクトのすべてのパブリックプロパティ (非表示ではないプロパティ) が表示されます。

2 番目のコマンドでは、コマンドレットをUpdate-TypeData使用して、System.DateTime 型の既定のリスト プロパティを設定します。 このコマンドでは、TypeName パラメーターを使用して型を指定し、DefaultDisplayPropertySet パラメーターを使用してリストの既定のプロパティを指定します。 選択したプロパティには、前の例で追加された新しい Quarter スクリプト プロパティが含まれます。

最後のコマンドは現在の日付を取得し、リスト形式で再び表示します。 プロパティの完全な一覧ではなく、コマンドで 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 パイプ処理され、列にコマンドの名前が表示されます。

次に、この例では、CommandInfo 型の DefaultDisplayProperty と新しいスクリプト プロパティの両方を定義するために使用Update-TypeDataします。 Get-Command出力は、CommandInfo オブジェクトとその型から派生したオブジェクトを返します。 新しいスクリプト プロパティ FullyQualifiedName は、実行可能アプリケーションへの完全なパスとコマンドレットの完全修飾名を返します。コマンドレット名の前には、それを定義するモジュールが付いています。 コマンドレット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-TypeDataオブジェクトUpdate-TypeData型の拡張型データを追加する方法を示します。

この手法は、コマンドレットまたはメソッドを Get-Member 使用してオブジェクトの種類を Get-Type 取得するよりも高速です。 ただし、オブジェクトのコレクションをパイプ処理する Update-TypeData場合は、最初のオブジェクト型の型データが更新され、その型に対してメンバーが既に定義されているため、コレクション内の他のすべてのオブジェクトに対してエラーが返されます。

最初のコマンドでは、コマンドレットをGet-Module使用して Microsoft.PowerShell.Utility モジュールを取得します。 このコマンドは、モジュール オブジェクトをコマンドレットにUpdate-TypeDataパイプします。これにより、System.Management.Automation.PSModuleInfo 型の型データと、そこから派生した型 (コマンドで ListAvailable パラメーターを使用するときに返される Get-Module ModuleInfoGrouping 型など) が更新されます。

このコマンドは Update-TypeData 、インポートされたすべてのモジュールに SupportsUpdatableHelp スクリプト プロパティを追加します。 Value パラメーターの値は、モジュールの HelpInfoUri プロパティが設定されている場合、$falseそれ以外の場合に返す$trueスクリプトです。

2 番目のコマンドは、モジュール オブジェクトGet-ModuleをコマンドレットにFormat-Tableパイプします。このコマンドレットには、使用可能なモジュールの Name プロパティと SupportsUpdatableHelp プロパティが表示されます

パラメーター

-AppendPath

省略可能 .ps1xml なファイルへのパスを指定します。 指定されたファイルは、組み込みファイルが読み込まれた後にリストされる順序で、読み込まれます。 AppendPathUpdate-TypeDataをパイプ処理することもできます。

型:String[]
Aliases:PSPath, Path
配置:0
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Confirm

コマンドレットの実行前に確認を求めるメッセージが表示されます。

型:SwitchParameter
Aliases:cf
配置:Named
規定値:False
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-DefaultDisplayProperty

他のプロパティが指定されていない場合にコマンドレットによって表示される型の Format-Wide プロパティを指定します。

型の標準および拡張プロパティの名前を入力します。 このパラメーターの値には、同じコマンドに追加される型の名前を指定できます。

この値は、ファイル内 Format.ps1xml の型に対してワイド ビューが定義されていない場合にのみ有効です。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-DefaultDisplayPropertySet

型の 1 つまたは複数のプロパティを指定します。 これらのプロパティは、他のプロパティが Format-List指定されていない場合は、 Format-Table,、および Format-Custom コマンドレットによって表示されます。

型の標準および拡張プロパティの名前を入力します。 このパラメーターの値には、同じコマンドに追加される型の名前を指定できます。

この値は、ファイル内の型 Format.ps1xml に対してリスト、テーブル、またはカスタム ビューが定義されていない場合にのみ有効です。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:String[]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-DefaultKeyPropertySet

型の 1 つまたは複数のプロパティを指定します。 これらのプロパティは、他のプロパティが Group-Object 指定されていない場合に、コマンドレットによって Sort-Object 使用されます。

型の標準および拡張プロパティの名前を入力します。 このパラメーターの値には、同じコマンドに追加される型の名前を指定できます。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:String[]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Force

指定した型データに対して既に型データが指定されている場合でも、コマンドレットが指定した型データを使用することを示します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-InheritPropertySerializationSet

シリアル化されるプロパティのセットを継承するかどうかを示します。 既定値は $Null です。 このパラメーターの有効値は、次のとおりです。

  • $True. プロパティ セットは継承されます。
  • $False. プロパティ セットは継承されません。
  • $Null. 継承は定義されていません。

このパラメーターは、SerializationMethod パラメーターの値が SpecificProperties. このパラメーターの値が指定されている場合は$False、PropertySerializationSet パラメーターが必要です。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:Nullable<T>[Boolean]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-MemberName

プロパティまたはメソッドの名前を指定します。

TypeName、MemberType、ValueSecondValue パラメーターと共にこのパラメーターを使用して、型のプロパティまたはメソッドを追加または変更します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-MemberType

追加または変更するメンバーの型を指定します。

TypeName、MemberType、ValueSecondValue パラメーターと共にこのパラメーターを使用して、型のプロパティまたはメソッドを追加または変更します。 このパラメーターの有効値は、次のとおりです。

  • AliasProperty
  • CodeMethod
  • CodeProperty
  • Noteproperty
  • ScriptMethod
  • ScriptProperty

これらの値の詳細については、「PSMemberTypes 列挙型」を参照してください

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:PSMemberTypes
指定可能な値:NoteProperty, AliasProperty, ScriptProperty, CodeProperty, ScriptMethod, CodeMethod
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-PrependPath

省略可能 .ps1xml なファイルへのパスを指定します。 指定されたファイルは、組み込みファイルが読み込まれる前にリストされる順序で、読み込まれます。

型:String[]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-PropertySerializationSet

シリアル化するプロパティの名前を指定します。 SerializationMethod パラメーターの値が SpecificProperties の場合は、このパラメーターを使用します

型:String[]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-SecondValue

AliasProperty、ScriptPropertyCodePropertyまたは CodeMethod メンバーの追加値を指定します。

TypeName、MemberType、ValueSecondValue パラメーターと共にこのパラメーターを使用して、型のプロパティまたはメソッドを追加または変更します。

MemberType パラメーターの値が指定されている場合、SecondValue パラメーターの値はAliasPropertyデータ型である必要があります。 PowerShell は、エイリアス プロパティの値を指定した型に変換 (つまりキャスト) します。 たとえば、文字列プロパティの代替名を提供するエイリアス プロパティを追加する場合は、System.Int32SecondValue を指定して、エイリアス化された文字列値を整数に変換することもできます。

MemberType パラメーターの値が指定されている場合はScriptProperty、SecondValue パラメーターを使用して、追加のスクリプト ブロックを指定できます。 Value パラメーターの値のスクリプト ブロックは、変数の値を取得します。 SecondValue パラメーターの値のスクリプト ブロックは、変数の値を設定します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:Object
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-SerializationDepth

文字列としてシリアル化する型オブジェクトのレベル数を指定します。 既定値 1 は、オブジェクトとそのプロパティをシリアル化します。 値は 0 オブジェクトをシリアル化しますが、そのプロパティはシリアル化しません。 値は 2 、オブジェクト、そのプロパティ、およびプロパティ値内の任意のオブジェクトをシリアル化します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:Int32
配置:Named
規定値:1
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-SerializationMethod

型のシリアル化メソッドを指定します。 シリアル化メソッドは、シリアル化される型のプロパティとそれらのシリアル化に使用する方法を決定します。 このパラメーターの有効値は、次のとおりです。

  • AllPublicProperties. 型のすべてのパブリック プロパティをシリアル化します。 SerializationDepth パラメーターを使用して、子プロパティをシリアル化するかどうかを判断できます。
  • String. 文字列として、型をシリアル化します。 StringSerializationSource使用して、シリアル化の結果として使用する型のプロパティを指定できます。 それ以外の場合、型はオブジェクトの ToString メソッドを使用してシリアル化されます。
  • SpecificProperties. この型の指定したプロパティのみをシリアル化します。 PropertySerializationSet パラメーターを使用して、シリアル化される型のプロパティを指定します。 また、InheritPropertySerializationSet パラメーターを使用して、プロパティ セットが継承されているかどうかを判断し、SerializationDepth パラメーターを使用して子プロパティがシリアル化されるかどうかを判断することもできます。

PowerShell では、シリアル化メソッドは PSStandardMembers 内部オブジェクトに格納されます。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-StringSerializationSource

型のプロパティの名前を指定します。 指定されたプロパティの値は、シリアル化の結果として使用されます。 このパラメーターは、SerializationMethod パラメーターの値が String の場合にのみ有効です。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-TargetTypeForDeserialization

この型のオブジェクトが、逆シリアル化時に変換される型を指定します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:Type
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-TypeAdapter

型アダプターの型 (Microsoft.PowerShell.Cim.CimInstanceAdapter など) を指定します。 型アダプターを使用すると、PowerShell で型のメンバーを取得できます。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:Type
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-TypeConverter

さまざまな型の間で値を変換する型コンバーターを指定します。 型の型コンバーターが定義されている場合、型コンバーターのインスタンスが変換に使用されます。

System.ComponentModel.TypeConverter クラスまたは System.Management.Automation.PSTypeConverter クラスから派生した System.Type 値を入力します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:Type
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-TypeData

このコマンドレットがセッションに追加するデータ型の配列を指定します。 TypeData オブジェクトを含む変数、または TypeData オブジェクトを取得するコマンド (コマンドなど) をGet-TypeData入力します。 TypeData オブジェクトUpdate-TypeDataをパイプでパイプすることもできます。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:TypeData[]
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-TypeName

拡張する型の名前を指定します。

System 名前空間の型の場合は、短い名前を入力します。 それ以外の場合は、完全な型名が必要です。 ワイルドカードはサポートされていません。

パイプ型の名前を次のように Update-TypeData指定できます。 オブジェクトをパイプ処理する場合は、Update-TypeDataオブジェクトUpdate-TypeDataの型名を取得し、データ型をオブジェクト型に取得します。

このパラメーターを MemberName、MemberTypeValue、SecondValue の各パラメーターと共に使用して、型のプロパティまたはメソッドを追加または変更します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Value

プロパティまたはメソッドの値を指定します。

、、、またはCodeMethodメンバーをAliasProperty追加する場合は、SecondValue パラメーターを使用して追加情報を追加できます。 ScriptPropertyCodeProperty

このパラメーターを MemberName、MemberTypeValue、SecondValue の各パラメーターと共に使用して、型のプロパティまたはメソッドを追加または変更します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

型:Object
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-WhatIf

コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。

型:SwitchParameter
Aliases:wi
配置:Named
規定値:False
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

String

AppendPath、TypeNameまたは TypeData パラメーターの値を含む文字列をこのコマンドレットにパイプできます。

出力

None

このコマンドレットは、出力を返しません。