Udostępnij za pomocą


Update-TypeData

Aktualizuje dane typu rozszerzonego w sesji.

Składnia

FileSet (Domyślna)

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

Opis

Polecenie Update-TypeData cmdlet aktualizuje dane typu rozszerzonego w sesji przez ponowne załadowanie Types.ps1xml plików do pamięci i dodanie nowych danych typu rozszerzonego.

Domyślnie program PowerShell ładuje dane rozszerzonego typu, ponieważ są potrzebne. Bez parametrów Update-TypeData załaduje ponownie wszystkie pliki, które zostały załadowane w sesji, w tym wszelkie Types.ps1xml pliki typu, które zostały dodane. Możesz użyć parametrów , Update-TypeData aby dodać nowe pliki typu i dodać i zastąpić dane typu rozszerzonego.

Polecenie Update-TypeData cmdlet może służyć do wstępnego ładowania wszystkich typów danych. Ta funkcja jest szczególnie przydatna podczas opracowywania typów i ładowania tych nowych typów do celów testowych.

Począwszy od programu Windows PowerShell 3.0, można użyć Update-TypeData do dodawania i zastępowania danych typu rozszerzonego Types.ps1xml w sesji bez użycia pliku. Dane typu dodawane dynamicznie, czyli bez pliku, są dodawane tylko do bieżącej sesji. Aby dodać dane typu do wszystkich sesji, dodaj Update-TypeData polecenie do profilu programu PowerShell. Aby uzyskać więcej informacji, zobacz about_Profiles.

Ponadto, począwszy od programu Windows PowerShell 3.0, można użyć Get-TypeData polecenia cmdlet , aby pobrać typy rozszerzone w bieżącej sesji i Remove-TypeData polecenie cmdlet, aby usunąć typy rozszerzone z bieżącej sesji.

Wyjątki występujące we właściwościach lub od dodawania właściwości do Update-TypeData polecenia nie zgłaszają błędów. Jest to pomijanie wyjątków, które wystąpiłyby w wielu typach typowych podczas formatowania i wyprowadzania. Jeśli uzyskujesz właściwości platformy .NET, możesz obejść pomijanie wyjątków przy użyciu składni metody, jak pokazano w poniższym przykładzie:

"hello".get_Length()

Należy pamiętać, że składnia metody może być używana tylko z właściwościami platformy .NET. Właściwości dodane przez uruchomienie polecenia cmdlet Update-TypeData nie mogą używać składni metody.

Aby uzyskać więcej informacji na temat Types.ps1xml plików w programie PowerShell, zobacz about_Types.ps1xml.

Przykłady

Przykład 1. Aktualizowanie typów rozszerzonych

Update-TypeData

To polecenie aktualizuje konfigurację rozszerzonego Types.ps1xml typu z plików, które zostały już użyte w sesji.

Przykład 2. Wielokrotne aktualizowanie typów

W tym przykładzie pokazano, jak zaktualizować typy w pliku typu wiele razy w tej samej sesji.

Pierwsze polecenie aktualizuje konfigurację rozszerzonego Types.ps1xml typu z plików, najpierw przetwarza pliki TypesA.types.ps1xml i TypesB.types.ps1xml .

Drugie polecenie pokazuje, jak zaktualizować TypesA.types.ps1xml ponownie, na przykład w przypadku dodania lub zmiany typu w pliku. Możesz powtórzyć poprzednie polecenie dla TypesA.types.ps1xml pliku lub uruchomić Update-TypeData polecenie bez parametrów, ponieważ TypesA.types.ps1xml znajduje się już na liście plików typów dla bieżącej sesji.

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

Przykład 3. Dodawanie właściwości skryptu do obiektów DateTime

W tym przykładzie użyto Update-TypeData polecenia , aby dodać właściwość skryptu Quarter do obiektów System.DateTime w bieżącej sesji, takich jak te zwracane przez Get-Date polecenie cmdlet.

$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

Polecenie Update-TypeData używa parametru TypeName do określenia typu System.DateTime , parametru MemberName w celu określenia nazwy nowej właściwości, właściwości MemberType w celu określenia typu ScriptProperty i parametru Value w celu określenia skryptu określającego kwartał roczny.

Wartość właściwości Value jest skryptem, który oblicza bieżący kwartał roczny. Blok skryptu używa zmiennej automatycznej $this do reprezentowania bieżącego wystąpienia obiektu i operatora In w celu określenia, czy wartość miesiąca pojawia się w każdej tablicy całkowitej. Aby uzyskać więcej informacji na temat operatora -in, zobacz sekcję „about_Comparison_Operators” .

Drugie polecenie pobiera nową właściwość Quarter bieżącej daty.

Przykład 4. Aktualizowanie typu wyświetlanego na listach domyślnie

W tym przykładzie pokazano, jak ustawić właściwości typu wyświetlanego na listach domyślnie, czyli wtedy, gdy nie określono żadnych właściwości. Ponieważ dane typu nie są określone w Types.ps1xml pliku, obowiązują tylko w bieżącej sesji.

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

Pierwsze polecenie przedstawia widok listy dla Get-Date polecenia, który zwraca obiekt System.DateTime reprezentujący bieżącą datę. Polecenie używa operatora potoku (|), aby wysłać obiekt DateTime do Format-List polecenia cmdlet. Format-List Ponieważ polecenie nie określa właściwości do wyświetlenia na liście, program PowerShell wyświetla każdą publiczną, nieukrytą właściwość dla obiektu.

Drugie polecenie używa Update-TypeData polecenia cmdlet , aby ustawić domyślne właściwości listy dla typu System.DateTime . Polecenie używa parametru TypeName, aby określić typ i DefaultDisplayPropertySet parametru, aby określić domyślne właściwości listy. Wybrane właściwości obejmują nową właściwość skryptu Quarter , która została dodana w poprzednim przykładzie.

Ostatnie polecenie pobiera bieżącą datę i ponownie wyświetla ją w formacie listy. Wyświetla tylko właściwości zdefiniowane w poleceniu Update-TypeData , a nie pełną listę właściwości.

Przykład 5. Ustawianie właściwości wyświetlanej przez typ w szerokim formacie

W tym przykładzie pokazano, jak utworzyć nową właściwość skryptu i użyć jej jako właściwości domyślnej wyświetlanej po przekazaniu Format-Wide typu do polecenia cmdlet.

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

Pierwsze polecenie używa Get-Command polecenia cmdlet, aby zwrócić każde polecenie o nazwie zawierającej wyraz File. Potokuje dane wyjściowe do Format-Wide polecenia cmdlet, które pokazuje nazwy poleceń w kolumnach.

Następnie w przykładzie użyto Update-TypeData metody do zdefiniowania właściwości DefaultDisplayProperty i nowej właściwości skryptu dla typu CommandInfo . Dane wyjściowe polecenia Get-Command zwracają obiekty CommandInfo i obiekty pochodzące z tego typu. Nowa właściwość skryptu, FullyQualifiedName, zwraca pełną ścieżkę do aplikacji wykonywalnych i w pełni kwalifikowaną nazwę poleceń cmdlet, która prefiksuje nazwę polecenia cmdlet z modułem, który go definiuje. Polecenie Update-TypeData cmdlet umożliwia zdefiniowanie nowej właściwości skryptu i użycie jej jako właściwości DefaultDisplayProperty w tym samym poleceniu.

Na koniec dane wyjściowe pokazują wyniki Get-Command wyświetlane w szerokim formacie po aktualizacji typu. Przedstawia w pełni kwalifikowaną nazwę poleceń cmdlet i pełną ścieżkę do aplikacji wykonywalnych.

Przykład 6. Aktualizowanie danych typu dla obiektu potokowego

$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

W tym przykładzie pokazano, że podczas potoku obiektu do Update-TypeDataobiektu Update-TypeData dodaje rozszerzone dane typu dla typu obiektu.

Ta technika jest szybsza niż użycie Get-Member polecenia cmdlet lub Get-Type metody w celu uzyskania typu obiektu. Jednak w przypadku potoku kolekcji obiektów do Update-TypeDataprogramu program aktualizuje dane typu pierwszego typu obiektu, a następnie zwraca błąd dla wszystkich innych obiektów w kolekcji, ponieważ element członkowski jest już zdefiniowany na typie.

Pierwsze polecenie używa Get-Module polecenia cmdlet do pobrania modułu Microsoft.PowerShell.Utility . Polecenie potokuje obiekt modułu Update-TypeData do polecenia cmdlet, które aktualizuje dane typu dla typu System.Management.Automation.PSModuleInfo i typów pochodnych od niego, takich jak typ ModuleInfoGrouping zwracany Get-Module podczas używania parametru ListAvailable w poleceniu.

Polecenia Update-TypeData dodaje właściwość skryptu SupportsUpdatableHelp do wszystkich zaimportowanych modułów. Wartość parametru Value jest skryptem, który zwraca $true , jeśli właściwość HelpInfoUri modułu jest wypełniana i $false w inny sposób.

Drugie polecenie potokuje obiekty modułu z Get-Module do Format-Table polecenia cmdlet, które wyświetla właściwości Name i SupportsUpdatableHelp dostępnych modułów.

Parametry

-AppendPath

Określa ścieżkę do opcjonalnych .ps1xml plików. Określone pliki są ładowane w kolejności, w której są wyświetlane po załadowaniu wbudowanych plików. Możesz również przekazać wartość AppendPath do Update-TypeDataelementu .

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:PSPath, Ścieżka

Zestawy parametrów

FileSet
Position:0
Obowiązkowy:False
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-Confirm

Prosi o potwierdzenie przed uruchomieniem cmdletu.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:por

Zestawy parametrów

(All)
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-DefaultDisplayProperty

Określa właściwość typu wyświetlanego Format-Wide przez polecenie cmdlet, gdy nie określono żadnych innych właściwości.

Wpisz nazwę standardowej lub rozszerzonej właściwości typu. Wartość tego parametru może być nazwą typu, który jest dodawany w tym samym poleceniu.

Ta wartość jest efektywna tylko wtedy, gdy nie ma szerokich widoków zdefiniowanych dla typu w Format.ps1xml pliku.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-DefaultDisplayPropertySet

Określa co najmniej jedną właściwość typu. Te właściwości są wyświetlane przez Format-Listpolecenia cmdlet , Format-Tablei Format-Custom , gdy nie określono żadnych innych właściwości.

Wpisz nazwy właściwości standardowych lub rozszerzonych typu. Wartość tego parametru może być nazwami typów, które są dodawane w tym samym poleceniu.

Ta wartość jest skuteczna tylko wtedy, gdy nie ma odpowiednio żadnych widoków list, tabel ani niestandardowych zdefiniowanych dla typu w Format.ps1xml pliku.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-DefaultKeyPropertySet

Określa co najmniej jedną właściwość typu. Te właściwości są używane przez Group-Object polecenia cmdlet i Sort-Object , gdy nie określono żadnych innych właściwości.

Wpisz nazwy właściwości standardowych lub rozszerzonych typu. Wartość tego parametru może być nazwami typów, które są dodawane w tym samym poleceniu.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Force

Wskazuje, że polecenie cmdlet używa danych określonego typu, nawet jeśli dane typu zostały już określone dla tego typu.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
TypeDataSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-InheritPropertySerializationSet

Wskazuje, czy zestaw właściwości, które są serializowane, jest dziedziczony. Wartość domyślna to $null. Dopuszczalne wartości tego parametru to:

  • $true. Zestaw właściwości jest dziedziczony.
  • $false. Zestaw właściwości nie jest dziedziczony.
  • $null. Dziedziczenie nie jest zdefiniowane.

Ten parametr jest prawidłowy tylko wtedy, gdy wartość parametru SerializationMethod to SpecificProperties. Gdy wartość tego parametru to $false, parametr PropertySerializationSet jest wymagany.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:

Nullable<T>[Boolean]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-MemberName

Określa nazwę właściwości lub metody.

Użyj tego parametru z parametrami typeName, MemberType, value i parametrami SecondValue, aby dodać lub zmienić właściwość lub metodę typu.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-MemberType

Określa typ elementu członkowskiego do dodania lub zmiany.

Użyj tego parametru z parametrami typeName, MemberType, value i parametrami SecondValue, aby dodać lub zmienić właściwość lub metodę typu. Dopuszczalne wartości tego parametru to:

  • AliasProperty
  • CodeMethod
  • CodeProperty
  • Uwagawłaściwość
  • ScriptMethod
  • ScriptProperty

Aby uzyskać informacje o tych wartościach, zobacz PSMemberTypes, wyliczenie.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:PSMemberTypes
Domyślna wartość:None
Dopuszczalne wartości:NoteProperty, AliasProperty, ScriptProperty, CodeProperty, ScriptMethod, CodeMethod
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-PrependPath

Określa ścieżkę do opcjonalnych .ps1xml plików. Określone pliki są ładowane w kolejności, w której są wyświetlane przed załadowaniem wbudowanych plików.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

FileSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-PropertySerializationSet

Określa nazwy właściwości, które są serializowane. Użyj tego parametru, gdy wartość parametru SerializationMethod jest SpecificProperties.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-SecondValue

Określa dodatkowe wartości dla AliasProperty, ScriptProperty, CodePropertylub CodeMethod członków.

Użyj tego parametru z parametrami TypeName, MemberType, Value i SecondValue , aby dodać lub zmienić właściwość lub metodę typu.

Gdy wartość parametru MemberType to , wartość AliasPropertySecondValue musi być typem danych. Program PowerShell konwertuje (czyli rzutowania) wartość właściwości aliasu na określony typ. Jeśli na przykład dodasz właściwość aliasu, która udostępnia alternatywną nazwę właściwości ciągu, możesz również określić wartość SecondValue elementu System.Int32 , aby przekonwertować aliasowaną wartość ciągu na liczbę całkowitą.

Gdy wartość parametru MemberType to , można użyć parametru ScriptPropertySecondValue, aby określić dodatkowy blok skryptu. Blok skryptu w wartości parametru Value pobiera wartość zmiennej. Blok skryptu w wartości parametru SecondValue ustawić wartość zmiennej.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:Object
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-SerializationDepth

Określa, ile poziomów obiektów typu są serializowane jako ciągi. Wartość 1 domyślna serializuje obiekt i jego właściwości. Wartość 0 serializuje obiekt, ale nie jego właściwości. Wartość 2 serializuje obiekt, jego właściwości i wszelkie obiekty w wartościach właściwości.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:Int32
Domyślna wartość:1
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-SerializationMethod

Określa metodę serializacji dla typu. Metoda serializacji określa, które właściwości typu są serializowane, oraz technikę, która jest używana do serializacji ich. Dopuszczalne wartości tego parametru to:

  • AllPublicProperties. Serializuj wszystkie właściwości publiczne typu. Aby określić, czy właściwości podrzędne są serializowane, można użyć parametru SerializationDepth.
  • String. Serializuj typ jako ciąg. Możesz użyć StringSerializationSource, aby określić właściwość typu, która ma być używana jako wynik serializacji. W przeciwnym razie typ jest serializowany przy użyciu metody ToString obiektu.
  • SpecificProperties. Serializuj tylko określone właściwości tego typu. Użyj parametru PropertySerializationSet, aby określić właściwości typu, które są serializowane. Można również użyć parametru InheritPropertySerializationSet, aby określić, czy zestaw właściwości jest dziedziczony, a parametr SerializationDepth, aby określić, czy właściwości podrzędne są serializowane.

W programie PowerShell metody serializacji są przechowywane w obiektach wewnętrznych PSStandardMembers .

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-StringSerializationSource

Określa nazwę właściwości typu. Wartość określonej właściwości jest używana jako wynik serializacji. Ten parametr jest prawidłowy tylko wtedy, gdy wartość parametru SerializationMethod to String.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-TargetTypeForDeserialization

Określa typ, do którego obiektu tego typu są konwertowane podczas deserializacji.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:Type
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-TypeAdapter

Określa typ adaptera typu, taki jak Microsoft.PowerShell.Cim.CimInstanceAdapter. Adapter typu umożliwia programowi PowerShell pobranie elementów członkowskich typu.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:Type
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-TypeConverter

Określa konwerter typów do konwertowania wartości między różnymi typami. Jeśli konwerter typów jest zdefiniowany dla typu, do konwersji jest używane wystąpienie konwertera typów.

Wprowadź wartość System.Type pochodzącą z klas System.ComponentModel.TypeConverter lub System.Management.Automation.PSTypeConverter.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:Type
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-TypeData

Określa tablicę danych typu, które to polecenie cmdlet dodaje do sesji. Wprowadź zmienną zawierającą obiekt TypeData lub polecenie, które pobiera obiekt TypeData, na przykład Get-TypeData polecenie. Możesz również przekazać obiekt TypeData do Update-TypeDataobiektu .

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:

TypeData[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

TypeDataSet
Position:0
Obowiązkowy:True
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-TypeName

Określa nazwę typu do rozszerzenia.

W przypadku typów w przestrzeni nazw System wprowadź krótką nazwę. W przeciwnym razie wymagana jest pełna nazwa typu. Symbole wieloznaczne nie są obsługiwane.

Nazwy typów potoku można przekazać do Update-TypeData. Podczas potoku obiektu do Update-TypeDataobiektu Update-TypeData pobiera nazwę typu obiektu i typ danych do typu obiektu.

Użyj tego parametru z parametrami MemberName, MemberType, value i parametrami SecondValue, aby dodać lub zmienić właściwość lub metodę typu.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:True
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Value

Określa wartość właściwości lub metody.

Jeśli dodasz element członkowski AliasProperty, CodeProperty, ScriptPropertylub CodeMethod , możesz użyć parametru SecondValue , aby dodać dodatkowe informacje.

Użyj tego parametru z parametrami MemberName, MemberType, value i parametrami SecondValue, aby dodać lub zmienić właściwość lub metodę typu.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:Object
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

DynamicTypeSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-WhatIf

Pokazuje, co się stanie, jeśli polecenie cmdlet zostanie uruchomione. Cmdlet nie jest uruchomiony.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:Wi

Zestawy parametrów

(All)
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

CommonParameters

To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.

Dane wejściowe

String

Możesz potokować ciąg zawierający wartości parametrów AppendPath, TypeName lub TypeData do tego polecenia cmdlet.

Dane wyjściowe

None

To polecenie cmdlet nie zwraca żadnych danych wyjściowych.