Nesne yapısını görüntüleme
Nesneler PowerShell'de bu kadar merkezi bir rol oynadığından, rastgele nesne türleriyle çalışmak için tasarlanmış birkaç yerel komut vardır. En önemlisi komutudur Get-Member
.
Bir komutun döndürdüğü nesneleri analiz etmek için en basit teknik, bu komutun çıkışını cmdlet'ine yöneltmektir Get-Member
. cmdlet'i Get-Member
, nesne türünün resmi adını ve üyelerinin tam listesini gösterir. Döndürülen öğelerin sayısı bazen bunaltıcı olabilir. Örneğin, bir işlem nesnesinin 100'den fazla üyesi olabilir.
Aşağıdaki komut, bir Process nesnesinin tüm üyelerini görmenize ve çıkışta sayfalandırmanıza olanak tanır.
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...
...
Görmek istediğimiz öğeleri filtreleyerek bu uzun bilgi listesini daha kullanışlı hale getirebilirsiniz. Get-Member
komutu yalnızca özellik olan üyeleri listelemenize olanak tanır. Özelliklerin çeşitli biçimleri vardır. cmdlet'i, değeriyle Properties
MemberType parametresini kullanarak bir türün özelliklerini görüntüler. Sonuçta elde edilen liste hala çok uzundur, ancak daha yönetilebilir:
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...
...
Not
MemberType'ın izin verilen değerleri AliasProperty, CodeProperty, Property, NoteProperty, ScriptProperty, Properties, PropertySet, Method, CodeMethod, ScriptMethod, Methods, ParameterizedProperty, MemberSet ve All değerleridir.
Bir işlem için 60'tan fazla özellik vardır. Varsayılan olarak, PowerShell ile biten .format.ps1xml
adlara sahip XML dosyalarında depolanan bilgileri kullanarak bir nesne türünün nasıl görüntüleneceğini belirler. İşlem nesnelerinin biçimlendirme tanımı içinde DotNetTypes.format.ps1xml
depolanır.
PowerShell'in varsayılan olarak görüntülediği özellikler dışında özelliklere bakmanız gerekiyorsa, cmdlet'leri kullanarak Format-*
çıkışı biçimlendirebilirsiniz.
PowerShell
A cross-platform task automation solution made up of a command-line shell and a scripting language.
Geri Bildirim
Gönderin ve geri bildirimi görüntüleyin