Partilhar via


Get-TypeData

Obtém os dados de tipo estendidos na sessão atual.

Sintaxe

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

Description

O cmdlet Get-TypeData obtém os dados de tipo estendidos na sessão atual. Isso inclui dados de tipo que foram adicionados à sessão por Types.ps1xml arquivo e dados de tipo dinâmico que foram adicionados usando o parâmetro do cmdlet Update-TypeData.

Você pode usar os dados de tipo estendidos que Get-TypeData retorna para examinar os dados de tipo na sessão e enviá-los para os cmdlets Update-TypeData e Remove-TypeData.

Os dados de tipo estendidos adicionam propriedades e métodos a objetos no PowerShell. Você pode usar as propriedades e os métodos adicionados da mesma maneira que usaria as propriedades e os métodos definidos no tipo de objeto. No entanto, ao escrever scripts, esteja ciente de que as propriedades e métodos adicionados podem não estar presentes em todas as sessões do PowerShell.

Para obter mais informações sobre Types.ps1xml arquivos, consulte about_Types.ps1xml. Para obter mais informações sobre dados de tipo dinâmico que o cmdlet Update-TypeData adiciona, consulte Update-TypeData.

Este cmdlet foi introduzido no Windows PowerShell 3.0.

Exemplos

Exemplo 1: Obter todos os dados de tipo estendidos

Este exemplo obtém todos os dados de tipo estendidos na sessão atual.

Get-TypeData

Exemplo 2: Obter dados de tipo por nome

Este exemplo obtém todos os dados de tipo na sessão atual cujo nome é qualificado com "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…

Exemplo 3: Obter o bloco de script que cria um valor de propriedade

Este exemplo obtém o bloco de script que cria o valor da propriedade EventID de objetos EventLogEntry.

(Get-TypeData *EventLogEntry*).Members.EventID

GetScriptBlock                     SetScriptBlock     IsHidden Name
--------------                     --------------     -------- ----
$this.get_EventID() -band 0xFFFF                         False EventID

Exemplo 4: Obter o bloco de script que define uma propriedade para um objeto especificado

Este exemplo obtém o bloco de script que define a propriedade DateTime de objetos System.DateTime no 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()
}

O comando usa o cmdlet Get-TypeData para obter os dados de tipo estendidos para o tipo de System.DataTime. O comando obtém a propriedade Members do objeto TypeData.

A propriedade Membros contém uma tabela de hash de propriedades e métodos que são definidos por dados de tipo estendidos. Cada chave na tabela de hash Members é uma propriedade ou nome de método e cada valor é a definição da propriedade ou valor do método.

O comando obtém a chave DateTime no Members e seu GetScriptBlock valor da propriedade.

A saída mostra o bloco de script que cria o valor da propriedade DateTime de cada objeto System.DateTime no PowerShell.

Parâmetros

-TypeName

Especifica dados de tipo como uma matriz somente para os tipos com os nomes especificados. Por padrão, Get-TypeData obtém todos os tipos na sessão.

Insira nomes de tipo ou padrões de nome. Nomes completos ou padrões de nome com caracteres curinga são necessários, mesmo para tipos no namespace System. Há suporte para curingas e o nome do parâmetro TypeName é opcional. Você também pode canalizar nomes de tipo para Get-TypeData.

Tipo:String[]
Position:0
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:True

Entradas

String

Você pode canalizar cadeias de caracteres contendo nomes de tipo para este cmdlet.

Saídas

TypeData

Notas

Get-TypeData obtém apenas os dados de tipo estendidos na sessão atual. Ele não obtém dados de tipo estendidos que estão no computador, mas não foram adicionados à sessão atual, como tipos estendidos que são definidos em módulos que não foram importados para a sessão atual.