
PowerShell Custom Table Create
Merhaba arkadaşlar bu yazımızda PowerShell üzerinde nasıl tablo oluşturacağımızdan bahsedeceğiz. PowerShell komutlarının çıktıları genellikle tablolar şeklinde olmaktadır. Örnek vermek gerekirse “Get-Service” komutunun çıktısı aşağıdaki gibidir.
Servileri listeleyen komutumuzun çıktısı bir tablo şeklindedir. Tablo header ve değerlerini içermektedir. Buna benzer bir tabloyu PowerShell ile 3 fatklı metot da yapabiliriz. Ayrıca custom tablo oluşturmanın avantajı birden fazla komuttan gelen çıktıları bir tabloda birşeltirebilirsiniz. Ayrıca Pipeline da aktarılacak şekilde verilerinizi düzenleyebilirisiniz.
Metot : String Table
Muhtemelen en kolay hatırlanacak olan ve en kullanışlısıdır. Boş bir değişken oluşturup header tanımlıyoruz ve dönen değerleri başlıklara eşitliyoruz.
#Boş bir değişken oluşturuyorum
$Tablo=‘ ‘ | select ServisAdi,ServisDurumu,BaslangicDurumu
$tablo.ServisAdi=“Test Servisi”
$Tablo.BaslangicDurumu=“Manuel”
$Tablo.ServisDurumu=“Çalışıyor”
$Tablo
Metot : Hash table to PsCustomObject
String metota benzer bir yapısı vardır. Oluşturulan Hash table PscustomObject classına dönüştrülür ve tablo elde edilir.
#Hash table oluşturuyorum
$EEHash=@{}
$EEHash.ServisAdi=(Get-Service -Name ALG).Name
$EEHash.BilgisayarAdi=$env:COMPUTERNAME
$EEHash.ServisDurumu=(Get-Service ALG).Status
[PSCustomObject]$EEHash
Metot : Custom Object
Bu yöntem komutun çıktısı ile gelen sonucun üzerinde değişiklik yaparak tabloyu şekillendirmeye dayanıyor.
#Sadece 1 Servisi çaığırıyorum
Get-Service -Name ALG| Format-Table @{l=‘KullaniciAdi’;e={$env:USERNAME}},@{l=‘Durum’;e={$_.Status}}`
,@{l=‘SeviceAdi’;e={$_.Name}},@{l=‘GorunenAd’;e={$_.DisplayName}}
Bu makalemizde PowerShell ile custom tablo oluşturmayı gördük. Bir sonraki makalemizde görüşmek dileği ile hoşçakalın!
Ercan ESE
Microsoft Product Consultant and Trainer,MCT