2026-11-10

Out-Gridview

Powershell'de bir cmdlet'in sonuçlarını kendine özgü başka bir pencerede tablo biçiminde görüntülemeye yarayan bir aracı var. En basit kullanım ile

Get-Process | Out-Gridview

Alias'larla kullanmayı istersek

ps | ogv

Birden fazla grid kullandıysam ve arka planda açık kaldıysa hangi tablonun hangi komutun çıktısı olduğunu karıştırmamak için başlık eklenebilir


Invoke-Command -Computername sunucu01 -ScriptBlock {Get-Service | Where-Object {$_.State -eq "Running"}} | Out-Gridview -Title "Sunucu01 - çalışan hizmetler"

icm -cn sunucu01 {gsv | ? Status -eq "Running" | ogv -t "Sunucu01 - çalışan hizmetler"

Grid nesnesi sütunlara göre sıralama ve filtreleme yapabilen yetenekli bir nesne. Burada gerekli işlemleri yapıp bir veya daha fazla satırı "seçip" çıktı dışarıya verilebilir.


Get-Process | Out-Gridview -Title "Süreçler" -PassThru

ps | ogv -t "Süreçler" -passthru

PassThru'ya çok benzeyen bir de OutputMode parametresi var. Tek farkı tekli/çoklu seçim yapmayı mümkün kılması.


Get-Process | Out-Gridview -Title "Süreçler" -OutputMode Multiple

ps | ogv -t "Süreçler" -o m

Bu özellikler farklı amaçlarla kullanılabilir.


Get-Process | Out-Gridview -Title "Süreçler" -PassThru | Export-Csv -Path "D:\surecler.csv"

ps | ogv -t "Süreçler" -p | epcsv D:\surecler.csv

Eski dosyaları silmek mesela.


Get-ChildItem -Path D:\dosyalar | Out-GridView -Title "Dosyalar" -OutputMode Multiple | Foreach-Object {Remove-Item $_}

gci | ogv -t "Dosyalar" -o m | % {ri $_}

Sanki

-PassThru
ile
-OutputMode Multiple
aynı şey gibi.

Hiç yorum yok: