Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Como os objetos desempenham uma função central no PowerShell, há vários comandos nativos projetados para trabalhar com tipos de objeto arbitrários. O mais importante é o Get-Member comando.
A técnica mais simples para analisar os objetos que um comando retorna é canalizar a saída desse comando para o Get-Member cmdlet. O Get-Member cmdlet mostra o nome formal do tipo de objeto e uma listagem completa de seus membros. O número de elementos retornados às vezes pode ser avassalador. Por exemplo, um objeto de processo pode ter mais de 100 membros.
O comando a seguir permite que você veja todos os membros de um objeto Process e página por meio da saída.
Get-Process | Get-Member | Out-Host -Paging
TypeName: System.Diagnostics.Process
Name MemberType Definition
---- ---------- ----------
Handles AliasProperty Handles = Handlecount
Name AliasProperty Name = ProcessName
NPM AliasProperty NPM = NonpagedSystemMemorySize
PM AliasProperty PM = PagedMemorySize
VM AliasProperty VM = VirtualMemorySize
WS AliasProperty WS = WorkingSet
add_Disposed Method System.Void add_Disposed(Event...
...
Podemos tornar essa longa lista de informações mais utilizável filtrando elementos que queremos ver. O comando Get-Member permite listar apenas os membros que são propriedades. Há várias formas de propriedades. O cmdlet exibe propriedades de um tipo usando o parâmetro MemberType com o valor Properties. A lista resultante ainda é muito longa, mas uma mais gerenciável:
Get-Process | Get-Member -MemberType Properties
TypeName: System.Diagnostics.Process
Name MemberType Definition
---- ---------- ----------
Handles AliasProperty Handles = Handlecount
Name AliasProperty Name = ProcessName
...
ExitCode Property System.Int32 ExitCode {get;}
...
Handle Property System.IntPtr Handle {get;}
...
CPU ScriptProperty System.Object CPU {get=$this.Total...
...
Path ScriptProperty System.Object Path {get=$this.Main...
...
Note
Os valores permitidos de MemberType são AliasProperty, CodeProperty, Property, NoteProperty, ScriptProperty, Properties, PropertySet, Method, CodeMethod, ScriptMethod, Methods, ParameterizedProperty, MemberSet e All.
Há mais de 60 propriedades para um processo. Por padrão, o PowerShell determina como exibir um tipo de objeto usando informações armazenadas em arquivos XML que têm nomes terminando em .format.ps1xml. A definição de formatação para objetos de processo é armazenada em DotNetTypes.format.ps1xml.
Se você precisar examinar propriedades diferentes daquelas exibidas pelo PowerShell por padrão, poderá formatar a saída usando os Format-* cmdlets.