Freigeben über


Update-TypeData

Aktualisiert die erweiterten Typdaten in der Sitzung.

Syntax

FileSet (Standardwert)

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>]

Beschreibung

Das Cmdlet Update-TypeData aktualisiert die erweiterten Typdaten in der Sitzung, indem die Types.ps1xml Dateien in den Arbeitsspeicher neu geladen und neue erweiterte Typdaten hinzugefügt werden.

Standardmäßig lädt PowerShell erweiterte Typdaten nach Bedarf. Ohne Parameter lädt Update-TypeData alle Types.ps1xml Dateien neu, die sie in der Sitzung geladen hat, einschließlich aller Typdateien, die Sie hinzugefügt haben. Sie können die Parameter von Update-TypeData verwenden, um neue Typdateien hinzuzufügen und erweiterte Typdaten hinzuzufügen und zu ersetzen.

Das Cmdlet Update-TypeData kann zum Vorabladen aller Typdaten verwendet werden. Dieses Feature ist besonders nützlich, wenn Sie Typen entwickeln und diese neuen Typen zu Testzwecken laden möchten.

Ab Windows PowerShell 3.0 können Sie Update-TypeData verwenden, um erweiterte Typdaten in der Sitzung hinzuzufügen und zu ersetzen, ohne eine Types.ps1xml Datei zu verwenden. Typdaten, die dynamisch hinzugefügt werden, d. h. ohne Datei, werden nur der aktuellen Sitzung hinzugefügt. Um allen Sitzungen die Typdaten hinzuzufügen, fügen Sie Ihrem PowerShell-Profil einen Update-TypeData Befehl hinzu. Weitere Informationen finden Sie unter about_Profiles.

Ab Windows PowerShell 3.0 können Sie auch das cmdlet Get-TypeData verwenden, um die erweiterten Typen in der aktuellen Sitzung und das Cmdlet Remove-TypeData abzurufen, um erweiterte Typen aus der aktuellen Sitzung zu löschen.

Ausnahmen, die in Eigenschaften auftreten oder dem Hinzufügen von Eigenschaften zu einem Update-TypeData Befehl, melden keine Fehler. Dies dient dazu, Ausnahmen zu unterdrücken, die bei vielen üblichen Typen während der Formatierung und Ausgabe auftreten würden. Wenn Sie .NET-Eigenschaften abrufen, können Sie stattdessen mithilfe der Methodensyntax die Unterdrückung von Ausnahmen umgehen, wie im folgenden Beispiel gezeigt:

"hello".get_Length()

Beachten Sie, dass die Methodensyntax nur mit .NET-Eigenschaften verwendet werden kann. Eigenschaften, die durch Ausführen des Cmdlets Update-TypeData hinzugefügt werden, können keine Methodensyntax verwenden.

Weitere Informationen zu den Types.ps1xml Dateien in PowerShell finden Sie unter about_Types.ps1xml.

Beispiele

Beispiel 1: Aktualisieren erweiterter Typen

Update-TypeData

Mit diesem Befehl wird die Konfiguration des erweiterten Typs aus den Types.ps1xml Dateien aktualisiert, die bereits in der Sitzung verwendet wurden.

Beispiel 2: Mehrfache Aktualisierungstypen

In diesem Beispiel wird gezeigt, wie die Typen in einer Typdatei mehrmals in derselben Sitzung aktualisiert werden.

Der erste Befehl aktualisiert die Konfiguration des erweiterten Typs aus den Types.ps1xml Dateien, verarbeitet zuerst die TypesA.types.ps1xml und TypesB.types.ps1xml Dateien.

Der zweite Befehl zeigt, wie sie die TypesA.types.ps1xml erneut aktualisieren, z. B. wenn Sie einen Typ in der Datei hinzugefügt oder geändert haben. Sie können entweder den vorherigen Befehl für die TypesA.types.ps1xml-Datei wiederholen oder einen Update-TypeData Befehl ohne Parameter ausführen, da TypesA.types.ps1xml bereits in der Typdateiliste für die aktuelle Sitzung enthalten ist.

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

Beispiel 3: Hinzufügen einer Skripteigenschaft zu DateTime-Objekten

In diesem Beispiel wird Update-TypeData verwendet, um die Skripteigenschaft QuarterSystem.DateTime Objekte in der aktuellen Sitzung hinzuzufügen, z. B. die vom Cmdlet Get-Date zurückgegebenen Objekte.

$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

Der befehl Update-TypeData verwendet den TypeName Parameter, um system.DateTime typ anzugeben, den MemberName Parameter, um einen Namen für die neue Eigenschaft anzugeben, die MemberType Eigenschaft, um den ScriptProperty Typ anzugeben, und den parameter Value anzugeben, um das Skript anzugeben, das das jährliche Quartal bestimmt.

Der Wert der eigenschaft Value ist ein Skript, das das aktuelle Jahresquartal berechnet. Der Skriptblock verwendet die $this automatische Variable, um die aktuelle Instanz des Objekts und den In-Operator darzustellen, um zu bestimmen, ob der Monatswert in jedem ganzzahligen Array angezeigt wird. Weitere Informationen über den Operator -in finden Sie unter about_Comparison_Operators.

Der zweite Befehl ruft die neue Quartalseigenschaft des aktuellen Datums ab.

Beispiel 4: Aktualisieren eines Typs, der standardmäßig in Listen angezeigt wird

In diesem Beispiel wird gezeigt, wie die Eigenschaften eines Typs festgelegt werden, der standardmäßig in Listen angezeigt wird, d. h., wenn keine Eigenschaften angegeben werden. Da die Typdaten in einer Types.ps1xml Datei nicht angegeben werden, ist sie nur in der aktuellen Sitzung wirksam.

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

Der erste Befehl zeigt die Listenansicht für den Befehl Get-Date an, der ein System.DateTime--Objekt ausgibt, das das aktuelle Datum darstellt. Der Befehl verwendet einen Pipelineoperator (|), um das DateTime- -Objekt an das cmdlet Format-List zu senden. Da der Befehl Format-List nicht die Eigenschaften angibt, die in der Liste angezeigt werden sollen, zeigt PowerShell jede öffentliche, nicht ausgeblendete Eigenschaft für das Objekt an.

Der zweite Befehl verwendet das Cmdlet Update-TypeData, um die Standardlisteneigenschaften für den System.DateTime- typ festzulegen. Der Befehl verwendet den TypeName Parameter, um den Typ und den DefaultDisplayPropertySet Parameter anzugeben, um die Standardeigenschaften für eine Liste anzugeben. Die ausgewählten Eigenschaften enthalten die neue Quarter Skripteigenschaft, die in einem vorherigen Beispiel hinzugefügt wurde.

Der letzte Befehl ruft das aktuelle Datum ab und zeigt es erneut in einem Listenformat an. Sie zeigt nur die im Befehl Update-TypeData definierten Eigenschaften anstelle der vollständigen Liste der Eigenschaften an.

Beispiel 5: Festlegen der Eigenschaft, die ein Typ im breiten Format anzeigt

In diesem Beispiel wird veranschaulicht, wie Sie eine neue Skripteigenschaft erstellen und als Standardeigenschaft verwenden, die angezeigt wird, wenn der Typ an das Cmdlet Format-Wide übergeben wird.

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

Der erste Befehl verwendet das Cmdlet Get-Command, um jeden Befehl mit einem Namen zurückzugeben, der das Wort Fileenthält. Die Ausgabe wird an das Cmdlet Format-Wide weitergeleitet, das die Namen der Befehle in Spalten anzeigt.

Als Nächstes verwendet das Beispiel Update-TypeData zum Definieren der DefaultDisplayProperty- und einer neuen Skripteigenschaft für den CommandInfo- Typ. Die Ausgabe für Get-Command gibt CommandInfo Objekte und Objekte zurück, die von diesem Typ abgeleitet sind. Die neue Skripteigenschaft, FullyQualifiedName, gibt den vollständigen Pfad zu ausführbaren Anwendungen und den vollqualifizierten Namen für Cmdlets zurück, der den Cmdlet-Namen mit dem Modul präfixiert, das es definiert. Das cmdlet Update-TypeData kann die neue Skripteigenschaft definieren und als DefaultDisplayProperty- im selben Befehl verwenden.

Schließlich zeigt die Ausgabe die Ergebnisse der Get-Command, die nach der Typaktualisierung im breiten Format angezeigt werden. Er zeigt den vollqualifizierten Namen für Cmdlets und den vollständigen Pfad zu ausführbaren Anwendungen an.

Beispiel 6: Aktualisieren von Typdaten für ein piped-Objekt

$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

In diesem Beispiel wird veranschaulicht, dass beim Pipen eines Objekts an Update-TypeDataUpdate-TypeData erweiterte Typdaten für den Objekttyp hinzugefügt werden.

Diese Technik ist schneller als die Verwendung des cmdlets Get-Member oder der Get-Type Methode zum Abrufen des Objekttyps. Wenn Sie jedoch eine Auflistung von Objekten an Update-TypeDataweitergeleitet haben, aktualisiert sie die Typdaten des ersten Objekttyps und gibt dann einen Fehler für alle anderen Objekte in der Auflistung zurück, da das Element bereits für den Typ definiert ist.

Der erste Befehl verwendet das cmdlet Get-Module, um das Microsoft.PowerShell.Utility Modul abzurufen. Mit dem Befehl wird das Modulobjekt an das cmdlet Update-TypeData weitergeleitet, das die Typdaten für den System.Management.Automation.PSModuleInfo Typ und die daraus abgeleiteten Typen aktualisiert, z. B. den ModuleInfoGrouping Typ, der zurückgegeben Get-Module, wenn Sie den Parameter ListAvailable im Befehl verwenden.

Mit den befehlen Update-TypeData werden allen importierten Modulen die SupportsUpdatableHelp Skripteigenschaft hinzugefügt. Der Wert des Value-Parameters ist ein Skript, das $true zurückgibt, wenn die HelpInfoUri- eigenschaft des Moduls aufgefüllt und andernfalls $false.

Mit dem zweiten Befehl werden die Modulobjekte von Get-Module an das Cmdlet Format-Table weitergeleitet, das die Eigenschaften Name und SupportsUpdatableHelp Eigenschaften der verfügbaren Module anzeigt.

Parameter

-AppendPath

Gibt den Pfad zu optionalen .ps1xml Dateien an. Die angegebenen Dateien werden in der Reihenfolge geladen, in der sie aufgelistet werden, nachdem die integrierten Dateien geladen wurden. Sie können auch einen AppendPath- Wert an Update-TypeDataanfügen.

Parametereigenschaften

Typ:

String[]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False
Aliase:PSPath, Pfad

Parametersätze

FileSet
Position:0
Obligatorisch.:False
Wert aus Pipeline:True
Wert aus Pipeline nach dem Eigenschaftsnamen:True
Wert aus verbleibenden Argumenten:False

-Confirm

Fordert Sie zur Bestätigung auf, bevor Sie das Cmdlet ausführen.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:False
Unterstützt Platzhalter:False
Nicht anzeigen:False
Aliase:vgl

Parametersätze

(All)
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-DefaultDisplayProperty

Gibt die Eigenschaft des Typs an, der vom Cmdlet Format-Wide angezeigt wird, wenn keine anderen Eigenschaften angegeben werden.

Geben Sie den Namen einer Standard- oder erweiterten Eigenschaft des Typs ein. Der Wert dieses Parameters kann der Name eines Typs sein, der im selben Befehl hinzugefügt wird.

Dieser Wert ist nur wirksam, wenn für den Typ in einer Format.ps1xml Datei keine breiten Ansichten definiert sind.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-DefaultDisplayPropertySet

Gibt eine oder mehrere Eigenschaften des Typs an. Diese Eigenschaften werden von den Cmdlets Format-List, Format-Tableund Format-Custom angezeigt, wenn keine anderen Eigenschaften angegeben werden.

Geben Sie die Namen von Standard- oder erweiterten Eigenschaften des Typs ein. Der Wert dieses Parameters kann die Namen von Typen sein, die im selben Befehl hinzugefügt werden.

Dieser Wert ist nur wirksam, wenn es keine Listen-, Tabellen- oder benutzerdefinierten Ansichten gibt, die für den Typ in einer Format.ps1xml Datei definiert sind.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:

String[]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-DefaultKeyPropertySet

Gibt eine oder mehrere Eigenschaften des Typs an. Diese Eigenschaften werden von den Cmdlets Group-Object und Sort-Object verwendet, wenn keine anderen Eigenschaften angegeben werden.

Geben Sie die Namen von Standard- oder erweiterten Eigenschaften des Typs ein. Der Wert dieses Parameters kann die Namen von Typen sein, die im selben Befehl hinzugefügt werden.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:

String[]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Force

Gibt an, dass das Cmdlet die angegebenen Typdaten verwendet, auch wenn typdaten bereits für diesen Typ angegeben wurden.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False
TypeDataSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-InheritPropertySerializationSet

Gibt an, ob der Satz von Eigenschaften, die serialisiert werden, geerbt wird. Der Standardwert ist $null. Die zulässigen Werte für diesen Parameter sind:

  • $true. Der Eigenschaftensatz wird geerbt.
  • $false. Der Eigenschaftensatz wird nicht geerbt.
  • $null. Vererbung ist nicht definiert.

Dieser Parameter ist nur gültig, wenn der Wert des SerializationMethod Parameter SpecificPropertiesist. Wenn der Wert dieses Parameters $falseist, ist das PropertySerializationSet Parameter erforderlich.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:

Nullable<T>[Boolean]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-MemberName

Gibt den Namen einer Eigenschaft oder Methode an.

Verwenden Sie diesen Parameter mit dem parameter TypeName, MemberType, Value und SecondValue Parameter, um eine Eigenschaft oder Methode eines Typs hinzuzufügen oder zu ändern.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-MemberType

Gibt den Typ des Hinzuzufügenden oder Änderns des Elements an.

Verwenden Sie diesen Parameter mit dem parameter TypeName, MemberType, Value und SecondValue Parameter, um eine Eigenschaft oder Methode eines Typs hinzuzufügen oder zu ändern. Die zulässigen Werte für diesen Parameter sind:

  • AliasProperty
  • CodeMethod
  • CodeProperty
  • Hinweiseigenschaft
  • ScriptMethod
  • ScriptProperty

Informationen zu diesen Werten finden Sie unter PSMemberTypes Enumeration.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:PSMemberTypes
Standardwert:None
Zulässige Werte:NoteProperty, AliasProperty, ScriptProperty, CodeProperty, ScriptMethod, CodeMethod
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-PrependPath

Gibt den Pfad zu den optionalen .ps1xml Dateien an. Die angegebenen Dateien werden in der Reihenfolge geladen, in der sie aufgeführt werden, bevor die integrierten Dateien geladen werden.

Parametereigenschaften

Typ:

String[]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

FileSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-PropertySerializationSet

Gibt die Namen von Eigenschaften an, die serialisiert werden. Verwenden Sie diesen Parameter, wenn der Wert des parameters SerializationMethodSpecificPropertiesist.

Parametereigenschaften

Typ:

String[]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-SecondValue

Gibt zusätzliche Werte für AliasProperty-, ScriptProperty-, CodeProperty-oder CodeMethod--Member an.

Verwenden Sie diesen Parameter mit den Parametern TypeName, MemberType, Valueund SecondValue Parameter, um eine Eigenschaft oder Methode eines Typs hinzuzufügen oder zu ändern.

Wenn der Wert des MemberType-Parameters AliasPropertyist, muss der Wert des SecondValue--Parameters ein Datentyp sein. PowerShell konvertiert (d. h. wandelt den Wert der Aliaseigenschaft in den angegebenen Typ um. Wenn Sie beispielsweise eine Aliaseigenschaft hinzufügen, die einen alternativen Namen für eine Zeichenfolgeneigenschaft bereitstellt, können Sie auch eine SecondValue- von System.Int32- angeben, um den aliasierten Zeichenfolgenwert in eine ganze Zahl zu konvertieren.

Wenn der Wert des MemberType-Parameters ScriptPropertyist, können Sie den parameter SecondValue verwenden, um einen zusätzlichen Skriptblock anzugeben. Der Skriptblock im Wert des Value-Parameters ruft den Wert einer Variablen ab. Der Skriptblock im Wert des SecondValue- Parameters legt den Wert der Variablen fest.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:Object
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-SerializationDepth

Gibt an, wie viele Ebenen von Typobjekten als Zeichenfolgen serialisiert werden. Der Standardwert 1 serialisiert das Objekt und dessen Eigenschaften. Ein Wert von 0 serialisiert das Objekt, aber nicht dessen Eigenschaften. Ein Wert von 2 serialisiert das Objekt, dessen Eigenschaften und alle Objekte in Eigenschaftswerten.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:Int32
Standardwert:1
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-SerializationMethod

Gibt eine Serialisierungsmethode für den Typ an. Eine Serialisierungsmethode bestimmt, welche Eigenschaften des Typs serialisiert werden und welche Technik zum Serialisieren verwendet wird. Die zulässigen Werte für diesen Parameter sind:

  • AllPublicProperties. Serialisieren Sie alle öffentlichen Eigenschaften des Typs. Sie können den parameter SerializationDepth verwenden, um zu bestimmen, ob untergeordnete Eigenschaften serialisiert werden.
  • String. Serialisieren Sie den Typ als Zeichenfolge. Sie können die StringSerializationSource- verwenden, um eine Eigenschaft des Typs anzugeben, der als Serialisierungsergebnis verwendet werden soll. Andernfalls wird der Typ mithilfe der ToString--Methode des Objekts serialisiert.
  • SpecificProperties. Serialisieren Sie nur die angegebenen Eigenschaften dieses Typs. Verwenden Sie den Parameter PropertySerializationSet, um die Eigenschaften des serialisierten Typs anzugeben. Sie können auch den Parameter InheritPropertySerializationSet verwenden, um zu bestimmen, ob der Eigenschaftensatz geerbt wird, und den parameter SerializationDepth, um zu bestimmen, ob untergeordnete Eigenschaften serialisiert werden.

In PowerShell werden Serialisierungsmethoden in PSStandardMembers internen Objekten gespeichert.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-StringSerializationSource

Gibt den Namen einer Eigenschaft des Typs an. Der Wert der angegebenen Eigenschaft wird als Serialisierungsergebnis verwendet. Dieser Parameter ist nur gültig, wenn der Wert des SerializationMethod Parameter String ist.

Parametereigenschaften

Typ:String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-TargetTypeForDeserialization

Gibt den Typ an, in den das Objekt dieses Typs konvertiert wird, wenn sie deserialisiert werden.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:Type
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-TypeAdapter

Gibt den Typ eines Typadapters an, z. B. Microsoft.PowerShell.Cim.CimInstanceAdapter. Ein Typadapter ermöglicht PowerShell das Abrufen der Member eines Typs.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:Type
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-TypeConverter

Gibt einen Typkonverter an, um Werte zwischen verschiedenen Typen zu konvertieren. Wenn ein Typkonverter für einen Typ definiert ist, wird eine Instanz des Typkonverters für die Konvertierung verwendet.

Geben Sie einen System.Type Wert ein, der von den System.ComponentModel.TypeConverter oder System.Management.Automation.PSTypeConverter Klassen abgeleitet wird.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:Type
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-TypeData

Gibt ein Array von Typdaten an, das dieses Cmdlet der Sitzung hinzufügt. Geben Sie eine Variable ein, die ein TypeData--Objekt oder einen Befehl enthält, der ein TypeData--Objekt abruft, z. B. einen Get-TypeData-Befehl. Sie können auch ein TypeData--Objekt an Update-TypeDatasenden.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:

TypeData[]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

TypeDataSet
Position:0
Obligatorisch.:True
Wert aus Pipeline:True
Wert aus Pipeline nach dem Eigenschaftsnamen:True
Wert aus verbleibenden Argumenten:False

-TypeName

Gibt den Namen des zu erweiternden Typs an.

Geben Sie für Typen im System Namespace den Kurznamen ein. Andernfalls ist der vollständige Typname erforderlich. Wildcards werden nicht unterstützt.

Sie können Typnamen an Update-TypeDataweitergeleitet werden. Wenn Sie ein Objekt an Update-TypeDataweitergeleitet haben, ruft Update-TypeData den Typnamen des Objekts und die Typdaten an den Objekttyp ab.

Verwenden Sie diesen Parameter mit den Parametern MemberName, MemberType, Value und SecondValue Parameter, um eine Eigenschaft oder Methode eines Typs hinzuzufügen oder zu ändern.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:True
Wert aus Pipeline:True
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Value

Gibt den Wert der Eigenschaft oder Methode an.

Wenn Sie einen AliasProperty, CodeProperty, ScriptPropertyoder CodeMethod Member hinzufügen, können Sie den parameter SecondValue verwenden, um zusätzliche Informationen hinzuzufügen.

Verwenden Sie diesen Parameter mit den Parametern MemberName, MemberType, Value und SecondValue Parameter, um eine Eigenschaft oder Methode eines Typs hinzuzufügen oder zu ändern.

Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.

Parametereigenschaften

Typ:Object
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

DynamicTypeSet
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-WhatIf

Zeigt, was passiert, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:False
Unterstützt Platzhalter:False
Nicht anzeigen:False
Aliase:Wi

Parametersätze

(All)
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

CommonParameters

Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.

Eingaben

String

Sie können eine Zeichenfolge mit den Werten der AppendPath, TypeNameoder TypeData Parameter an dieses Cmdlet weiterleiten.

Ausgaben

None

Dieses Cmdlet gibt keine Ausgabe zurück.