Bagikan melalui


Update-TypeData

Memperbarui data jenis yang diperluas dalam sesi.

Sintaks

FileSet (Default)

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

Deskripsi

cmdlet Update-TypeData memperbarui data jenis yang diperluas dalam sesi dengan memuat ulang file Types.ps1xml ke dalam memori dan menambahkan data jenis baru yang diperluas.

Secara default, PowerShell memuat data jenis yang diperluas karena diperlukan. Tanpa parameter, Update-TypeData memuat ulang semua file Types.ps1xml yang telah dimuat dalam sesi, termasuk file jenis apa pun yang Anda tambahkan. Anda dapat menggunakan parameter Update-TypeData untuk menambahkan file jenis baru dan menambahkan dan mengganti data jenis yang diperluas.

Cmdlet Update-TypeData dapat digunakan untuk memuat semua data jenis sebelumnya. Fitur ini sangat berguna ketika Anda mengembangkan jenis dan ingin memuat jenis baru tersebut untuk tujuan pengujian.

Dimulai di Windows PowerShell 3.0, Anda dapat menggunakan Update-TypeData untuk menambahkan dan mengganti data tipe yang diperluas dalam sesi tanpa menggunakan file Types.ps1xml. Ketik data yang ditambahkan secara dinamis, yaitu, tanpa file, ditambahkan hanya ke sesi saat ini. Untuk menambahkan data jenis ke semua sesi, tambahkan perintah Update-TypeData ke profil PowerShell Anda. Untuk informasi selengkapnya, lihat about_Profiles.

Selain itu, dimulai di Windows PowerShell 3.0, Anda dapat menggunakan cmdlet Get-TypeData untuk mendapatkan jenis yang diperluas dalam sesi saat ini dan cmdlet Remove-TypeData untuk menghapus jenis yang diperluas dari sesi saat ini.

Pengecualian yang terjadi di properti, atau dari menambahkan properti ke perintah Update-TypeData, jangan melaporkan kesalahan. Ini untuk menekan pengecualian yang akan terjadi pada banyak tipe umum selama pemformatan dan menghasilkan output. Jika Anda mendapatkan properti .NET, Anda dapat mengatasi pengabaian pengecualian dengan menggunakan sintaksis metode sebagai gantinya, seperti yang ditunjukkan dalam contoh berikut:

"hello".get_Length()

Perhatikan bahwa sintaks metode hanya dapat digunakan dengan properti .NET. Properti yang ditambahkan dengan menjalankan cmdlet Update-TypeData tidak dapat menggunakan sintaks metode.

Untuk informasi selengkapnya tentang file Types.ps1xml di PowerShell, lihat about_Types.ps1xml.

Contoh

Contoh 1: Memperbarui jenis yang diperluas

Update-TypeData

Perintah ini memperbarui konfigurasi jenis yang diperluas dari file Types.ps1xml yang telah digunakan dalam sesi.

Contoh 2: Memperbarui jenis beberapa kali

Contoh ini menunjukkan cara memperbarui jenis dalam file jenis beberapa kali dalam sesi yang sama.

Perintah pertama memperbarui konfigurasi jenis yang diperluas dari file Types.ps1xml, memproses file TypesA.types.ps1xml dan TypesB.types.ps1xml terlebih dahulu.

Perintah kedua menunjukkan cara memperbarui TypesA.types.ps1xml lagi, seperti yang mungkin Anda lakukan jika Anda menambahkan atau mengubah jenis dalam file. Anda dapat mengulangi perintah sebelumnya untuk file TypesA.types.ps1xml, atau menjalankan perintah Update-TypeData tanpa parameter, karena TypesA.types.ps1xml sudah berada dalam daftar file jenis untuk sesi saat ini.

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

Contoh 3: Menambahkan properti skrip ke objek DateTime

Contoh ini menggunakan Update-TypeData untuk menambahkan properti skrip Quarter ke objek System.DateTime dalam sesi saat ini, seperti yang dikembalikan oleh cmdlet 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

Perintah Update-TypeData menggunakan parameter TypeName untuk menentukan jenis System.DateTime, parameter MemberName untuk menentukan nama untuk properti baru, properti MemberType untuk menentukan jenis ScriptProperty, dan parameter Nilai untuk menentukan skrip yang menentukan kuartal tahunan.

Nilai properti Nilai adalah skrip yang menghitung kuartal tahunan saat ini. Blok skrip menggunakan variabel otomatis $this untuk mewakili instans objek saat ini dan operator Dalam untuk menentukan apakah nilai bulan muncul di setiap array bilangan bulat. Untuk informasi selengkapnya tentang operator -in, lihat about_Comparison_Operators.

Perintah kedua mendapatkan properti Kuartal baru dari tanggal saat ini.

Contoh 4: Memperbarui jenis yang ditampilkan dalam daftar secara default

Contoh ini memperlihatkan cara mengatur properti jenis yang ditampilkan dalam daftar secara default, yaitu, ketika tidak ada properti yang ditentukan. Karena data jenis tidak ditentukan dalam file Types.ps1xml, data tersebut hanya efektif dalam sesi saat ini.

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

Perintah pertama memperlihatkan tampilan daftar untuk perintah Get-Date, yang menghasilkan objek System.DateTime yang mewakili tanggal saat ini. Perintah menggunakan operator alur (|) untuk mengirim objek DateTime ke cmdlet Format-List. Karena perintah Format-List tidak menentukan properti yang akan ditampilkan dalam daftar, PowerShell menampilkan setiap properti publik yang tidak tersembunyi untuk objek tersebut.

Perintah kedua menggunakan cmdlet Update-TypeData untuk mengatur properti daftar default untuk jenis System.DateTime. Perintah menggunakan parameter TypeName untuk menentukan jenis dan parameter DefaultDisplayPropertySet untuk menentukan properti default untuk daftar. Properti yang dipilih mencakup properti skrip Quarter baru yang ditambahkan dalam contoh sebelumnya.

Perintah terakhir mendapatkan tanggal saat ini dan menampilkannya dalam format daftar lagi. Ini hanya menampilkan properti yang ditentukan dalam perintah Update-TypeData, bukan daftar lengkap properti.

Contoh 5: Atur properti jenis yang ditampilkan dalam format lebar

Contoh ini menunjukkan cara membuat properti skrip baru dan menggunakannya sebagai properti default yang ditampilkan saat jenis diteruskan ke cmdlet 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

Perintah pertama menggunakan cmdlet Get-Command untuk mengembalikan setiap perintah dengan nama yang berisi kata File. Ini menyalurkan output ke cmdlet Format-Wide, yang menunjukkan nama perintah dalam kolom.

Selanjutnya, contoh menggunakan Update-TypeData untuk menentukan DefaultDisplayProperty dan properti skrip baru untuk jenis CommandInfo. Output untuk Get-Command mengembalikan objek dan objek CommandInfo yang berasal dari jenis tersebut. Properti skrip baru, FullyQualifiedName, mengembalikan jalur lengkap ke aplikasi yang dapat dieksekusi dan nama yang sepenuhnya memenuhi syarat untuk cmdlet, yang mengawali nama cmdlet dengan modul yang menentukannya. Cmdlet Update-TypeData dapat menentukan properti skrip baru dan menggunakannya sebagai DefaultDisplayProperty dalam perintah yang sama.

Terakhir, output menunjukkan hasil Get-Command ditampilkan dalam format lebar setelah pembaruan jenis. Ini menunjukkan nama yang sepenuhnya memenuhi syarat untuk cmdlet dan jalur lengkap ke aplikasi yang dapat dieksekusi.

Contoh 6: Memperbarui jenis data untuk objek yang disalurkan

$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

Contoh ini menunjukkan bahwa saat Anda menyalurkan objek ke Update-TypeData, Update-TypeData menambahkan data jenis yang diperluas untuk jenis objek.

Teknik ini lebih cepat daripada menggunakan cmdlet Get-Member atau metode Get-Type untuk mendapatkan jenis objek. Namun, jika Anda menyalurkan kumpulan objek ke Update-TypeData, itu memperbarui jenis data dari jenis objek pertama dan kemudian mengembalikan kesalahan untuk semua objek lain dalam koleksi karena anggota sudah ditentukan pada jenis .

Perintah pertama menggunakan cmdlet Get-Module untuk mendapatkan modul Microsoft.PowerShell.Utility. Perintah menyalurkan objek modul ke cmdlet Update-TypeData, yang memperbarui data jenis untuk jenis System.Management.Automation.PSModuleInfo jenis dan jenis yang berasal darinya, seperti jenis ModuleInfoGrouping yang Get-Module kembali saat Anda menggunakan parameter ListAvailable dalam perintah.

Perintah Update-TypeData menambahkan properti skrip SupportsUpdatableHelp ke semua modul yang diimpor. Nilai parameter Nilai adalah skrip yang mengembalikan $true jika properti HelpInfoUri modul diisi dan $false sebaliknya.

Perintah kedua menyalurkan objek modul dari Get-Module ke cmdlet Format-Table, yang menampilkan Nama dan SupportsUpdatableHelp properti modul yang tersedia.

Parameter

-AppendPath

Menentukan jalur ke file .ps1xml opsional. File yang ditentukan dimuat dalam urutan yang tercantum setelah file bawaan dimuat. Anda juga dapat menyalurkan nilai AppendPath ke Update-TypeData.

Properti parameter

Jenis:

String[]

Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:PSPath, Jalur

Set parameter

FileSet
Position:0
Wajib:False
Nilai dari alur:True
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa:False

-Confirm

Meminta konfirmasi sebelum menjalankan cmdlet.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False
Alias:Cf

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-DefaultDisplayProperty

Menentukan properti jenis yang ditampilkan oleh cmdlet Format-Wide ketika tidak ada properti lain yang ditentukan.

Ketik nama properti standar atau diperluas dari jenis tersebut. Nilai parameter ini bisa menjadi nama jenis yang ditambahkan dalam perintah yang sama.

Nilai ini hanya efektif ketika tidak ada tampilan lebar yang ditentukan untuk jenis dalam file Format.ps1xml.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-DefaultDisplayPropertySet

Menentukan satu atau beberapa properti tipe. Properti ini ditampilkan oleh cmdlet Format-List, Format-Table, dan Format-Custom ketika tidak ada properti lain yang ditentukan.

Ketik nama properti standar atau diperluas dari jenis tersebut. Nilai parameter ini bisa menjadi nama jenis yang ditambahkan dalam perintah yang sama.

Nilai ini hanya efektif ketika tidak ada tampilan daftar, tabel, atau kustom, masing-masing, yang ditentukan untuk jenis dalam file Format.ps1xml.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:

String[]

Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-DefaultKeyPropertySet

Menentukan satu atau beberapa properti tipe. Properti ini digunakan oleh cmdlet Group-Object dan Sort-Object ketika tidak ada properti lain yang ditentukan.

Ketik nama properti standar atau diperluas dari jenis tersebut. Nilai parameter ini bisa menjadi nama jenis yang ditambahkan dalam perintah yang sama.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:

String[]

Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Force

Menunjukkan bahwa cmdlet menggunakan data jenis yang ditentukan, bahkan jika data jenis telah ditentukan untuk jenis tersebut.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:SwitchParameter
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False
TypeDataSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-InheritPropertySerializationSet

Menunjukkan apakah kumpulan properti yang diserialisasikan diwariskan. Nilai defaultnya adalah $null. Nilai yang dapat diterima untuk parameter ini adalah:

  • $true. Kumpulan properti diwariskan.
  • $false. Kumpulan properti tidak diwariskan.
  • $null. Warisan tidak didefinisikan.

Parameter ini hanya valid ketika nilai parameter SerializationMethodSpecificProperties. Ketika nilai parameter ini $false, parameter PropertySerializationSet diperlukan.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:

Nullable<T>[Boolean]

Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-MemberName

Menentukan nama properti atau metode.

Gunakan parameter ini dengan parameter TypeName, MemberType, Nilai dan parameter SecondValue untuk menambahkan atau mengubah properti atau metode jenis.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-MemberType

Menentukan tipe anggota yang akan ditambahkan atau diubah.

Gunakan parameter ini dengan parameter TypeName, MemberType, Nilai dan parameter SecondValue untuk menambahkan atau mengubah properti atau metode jenis. Nilai yang dapat diterima untuk parameter ini adalah:

  • AliasProperty
  • CodeMethod
  • CodeProperty
  • Catatanproperti
  • ScriptMethod
  • ScriptProperty

Untuk informasi tentang nilai-nilai ini, lihat Enumerasi PSMemberTypes.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:PSMemberTypes
Nilai default:None
Nilai yang diterima:NoteProperty, AliasProperty, ScriptProperty, CodeProperty, ScriptMethod, CodeMethod
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-PrependPath

Menentukan jalur ke file .ps1xml opsional. File yang ditentukan dimuat dalam urutan yang tercantum sebelum file bawaan dimuat.

Properti parameter

Jenis:

String[]

Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

FileSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-PropertySerializationSet

Menentukan nama properti yang diserialisasikan. Gunakan parameter ini saat nilai parameter SerializationMethod SpecificProperties.

Properti parameter

Jenis:

String[]

Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-SecondValue

Menentukan nilai tambahan untuk AliasProperty, ScriptProperty, CodeProperty, atau codeMethod anggota.

Gunakan parameter ini dengan parameter TypeName, MemberType, Value, dan parameter SecondValue untuk menambahkan atau mengubah properti atau metode jenis.

Ketika nilai parameter MemberType AliasProperty, nilai parameter SecondValue harus merupakan jenis data. PowerShell mengonversi (yaitu, mentransmisikan) nilai properti alias ke jenis yang ditentukan. Misalnya, jika Anda menambahkan properti alias yang menyediakan nama alternatif untuk properti string, Anda juga dapat menentukan SecondValueSystem.Int32 untuk mengonversi nilai string alias menjadi bilangan bulat.

Saat nilai parameter MemberType ScriptProperty, Anda dapat menggunakan parameter SecondValue untuk menentukan blok skrip tambahan. Blok skrip dalam nilai parameter Value mendapatkan nilai variabel. Blok skrip dalam nilai parameter SecondValue menetapkan nilai variabel.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:Object
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-SerializationDepth

Menentukan berapa banyak tingkat objek jenis yang diserialisasikan sebagai string. Nilai default 1 menserialisasikan objek dan propertinya. Nilai 0 menserialisasikan objek, tetapi bukan propertinya. Nilai 2 menserialisasikan objek, propertinya, dan objek apa pun dalam nilai properti.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:Int32
Nilai default:1
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-SerializationMethod

Menentukan metode serialisasi untuk jenis tersebut. Metode serialisasi menentukan properti jenis mana yang diserialisasikan dan teknik yang digunakan untuk menserialisasikannya. Nilai yang dapat diterima untuk parameter ini adalah:

  • AllPublicProperties. Menserialisasikan semua properti publik jenis. Anda dapat menggunakan parameter SerializationDepth untuk menentukan apakah properti anak diserialisasikan.
  • String. Menserialisasikan jenis sebagai string. Anda dapat menggunakan StringSerializationSource untuk menentukan properti jenis yang akan digunakan sebagai hasil serialisasi. Jika tidak, jenis diserialisasikan dengan menggunakan metode ToString objek.
  • SpecificProperties. Serialisasi hanya properti yang ditentukan dari jenis ini. Gunakan parameter PropertySerializationSet untuk menentukan properti jenis yang diserialisasikan. Anda juga dapat menggunakan parameter InheritPropertySerializationSet untuk menentukan apakah kumpulan properti diwariskan dan parameter SerializationDepth untuk menentukan apakah properti turunan diserialisasikan.

Di PowerShell, metode serialisasi disimpan di PSStandardMembers objek internal.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-StringSerializationSource

Menentukan nama properti jenis. Nilai properti yang ditentukan digunakan sebagai hasil serialisasi. Parameter ini hanya valid ketika nilai parameter SerializationMethod adalah String.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-TargetTypeForDeserialization

Menentukan tipe objek jenis ini yang dikonversi ketika dideserialisasi.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:Type
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-TypeAdapter

Menentukan jenis adaptor jenis, seperti Microsoft.PowerShell.Cim.CimInstanceAdapter. Adaptor jenis memungkinkan PowerShell untuk mendapatkan anggota jenis.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:Type
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-TypeConverter

Menentukan pengonversi tipe untuk mengonversi nilai di antara berbagai jenis. Jika pengonversi jenis didefinisikan untuk jenis, instans pengonversi jenis digunakan untuk konversi.

Masukkan nilai System.Type yang berasal dari System.ComponentModel.TypeConverter atau System.Management.Automation.PSTypeConverter kelas.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:Type
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-TypeData

Menentukan array data tipe yang ditambahkan cmdlet ini ke sesi. Masukkan variabel yang berisi objek TypeData atau perintah yang mendapatkan objek TypeData, seperti perintah Get-TypeData. Anda juga dapat menyalurkan objek TypeData ke Update-TypeData.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:

TypeData[]

Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

TypeDataSet
Position:0
Wajib:True
Nilai dari alur:True
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa:False

-TypeName

Menentukan nama tipe yang akan diperluas.

Untuk jenis di namespace Sistem , masukkan nama pendek. Jika tidak, nama jenis lengkap diperlukan. Kartubebas tidak didukung.

Anda dapat mengetik nama pipa untuk Update-TypeData. Saat Anda menyalurkan objek ke Update-TypeData, Update-TypeData mendapatkan nama jenis objek dan mengetik data ke jenis objek.

Gunakan parameter ini dengan parameter MemberName, MemberType, Nilai dan parameter SecondValue untuk menambahkan atau mengubah properti atau metode jenis.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:True
Nilai dari alur:True
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Value

Menentukan nilai properti atau metode.

Jika Anda menambahkan AliasProperty, CodeProperty, ScriptProperty, atau anggota CodeMethod, Anda dapat menggunakan parameter SecondValue untuk menambahkan informasi tambahan.

Gunakan parameter ini dengan parameter MemberName, MemberType, Nilai dan parameter SecondValue untuk menambahkan atau mengubah properti atau metode jenis.

Parameter ini diperkenalkan di Windows PowerShell 3.0.

Properti parameter

Jenis:Object
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

DynamicTypeSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-WhatIf

Menunjukkan apa yang akan terjadi ketika cmdlet dijalankan. Cmdlet tidak dijalankan.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False
Alias:wi

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

CommonParameters

Cmdlet ini mendukung parameter umum: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, dan -WarningVariable. Untuk informasi selengkapnya, lihat about_CommonParameters.

Input

String

Anda dapat menyalurkan string yang berisi nilai parameter AppendPath, TypeName, atau typeData ke cmdlet ini.

Output

None

Cmdlet ini tidak mengembalikan output.