Condividi tramite


Get-TypeData

Ottiene i dati del tipo esteso nella sessione corrente.

Sintassi

Default (impostazione predefinita).

Get-TypeData
    [[-TypeName] <String[]>]
    [<CommonParameters>]

Descrizione

Il cmdlet Get-TypeData ottiene i dati del tipo esteso nella sessione corrente. Sono inclusi i dati di tipo aggiunti alla sessione da Types.ps1xml file e dati di tipo dinamico aggiunti usando il parametro del cmdlet Update-TypeData.

È possibile usare i dati di tipo esteso restituiti Get-TypeData per esaminare i dati del tipo nella sessione e inviarli ai cmdlet Update-TypeData e Remove-TypeData.

I dati dei tipi estesi aggiungono proprietà e metodi agli oggetti in PowerShell. È possibile utilizzare le proprietà e i metodi aggiunti nello stesso modo in cui si userebbero le proprietà e i metodi definiti nel tipo di oggetto. Tuttavia, quando si scrivono script, tenere presente che le proprietà e i metodi aggiunti potrebbero non essere presenti in ogni sessione di PowerShell.

Per altre informazioni sui file di Types.ps1xml, vedere about_Types.ps1xml. Per altre informazioni sui dati di tipo dinamico aggiunti dal cmdlet Update-TypeData, vedere Update-TypeData.

Questo cmdlet è stato introdotto in Windows PowerShell 3.0.

Esempio

Esempio 1: Ottenere tutti i dati di tipo esteso

In questo esempio vengono restituiti tutti i dati di tipo esteso nella sessione corrente.

Get-TypeData

Esempio 2: Ottenere dati di tipo in base al nome

Questo esempio ottiene tutti i dati di tipo nella sessione corrente il cui nome è qualificato con "System.IO".

Get-TypeData -TypeName System.IO.*
TypeName                Members
--------                -------
System.IO.DirectoryInfo {[Mode, System.Management.Automation.Runspaces.CodePropert…
System.IO.FileInfo      {[Mode, System.Management.Automation.Runspaces.CodePropert…

Esempio 3: Ottenere il blocco di script che crea un valore della proprietà

In questo esempio viene ottenuto il blocco di script che crea il valore della proprietà EventID di EventLogEntry oggetti.

(Get-TypeData *EventLogEntry*).Members.EventID
GetScriptBlock                     SetScriptBlock     IsHidden Name
--------------                     --------------     -------- ----
$this.get_EventID() -band 0xFFFF                         False EventID

Esempio 4: Ottenere il blocco di script che definisce una proprietà per un oggetto specificato

Questo esempio ottiene il blocco di script che definisce la proprietà DateTime di oggetti System.DateTime in PowerShell.

(Get-TypeData -TypeName System.DateTime).Members["DateTime"].GetScriptBlock
if ((& { Set-StrictMode -Version 1; $this.DisplayHint }) -ieq  "Date") {
   "{0}" -f $this.ToLongDateString()
}
elseif ((& { Set-StrictMode -Version 1; $this.DisplayHint }) -ieq "Time") {
   "{0}" -f  $this.ToLongTimeString()
}
else {
   "{0} {1}" -f $this.ToLongDateString(), $this.ToLongTimeString()
}

Il comando usa il cmdlet Get-TypeData per ottenere i dati del tipo esteso per il tipo System.DataTime. Il comando ottiene la proprietà members dell'oggetto TypeData.

La proprietà membri contiene una tabella hash di proprietà e metodi definiti dai dati di tipo esteso. Ogni chiave nella tabella hash Members è una proprietà o un nome di metodo e ogni valore è la definizione del valore della proprietà o del metodo.

Il comando ottiene la chiave di DateTime in Members e il relativo valore della proprietà GetScriptBlock.

L'output mostra il blocco di script che crea il valore della proprietà dateTime di ogni oggetto System.DateTime in PowerShell.

Parametri

-TypeName

Specifica i dati di tipo come matrice solo per i tipi con i nomi specificati. Per impostazione predefinita, Get-TypeData ottiene tutti i tipi nella sessione.

Immettere nomi di tipo o modelli di nome. I nomi completi o i modelli di nome con caratteri jolly sono obbligatori, anche per i tipi nello spazio dei nomi System. I caratteri jolly sono supportati e il nome del parametro TypeName è facoltativo. È anche possibile inviare tramite pipe i nomi dei tipi a Get-TypeData.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:True
DontShow:False

Set di parametri

(All)
Posizione:0
Obbligatorio:False
Valore dalla pipeline:True
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

CommonParameters

Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.

Input

String

È possibile inviare tramite pipe stringhe contenenti nomi di tipo a questo cmdlet.

Output

TypeData

Note

Get-TypeData ottiene solo i dati di tipo esteso nella sessione corrente. Non ottiene dati di tipo esteso presenti nel computer, ma non aggiunti alla sessione corrente, ad esempio i tipi estesi definiti nei moduli che non sono stati importati nella sessione corrente.