簡體   English   中英

在PowerShell 3.0中自動刷新Out-GridView

[英]Auto Refresh Out-GridView in PowerShell 3.0

我試圖讓PowerShell(v3.0)創建的GridView定時自動刷新。 讓我們舉一個簡單的例子:

Get-Process | Out-GridView

這顯示了我所有正在運行的進程的漂亮形式。 如何讓這個表單自動刷新60秒? 作為獎勵,表單是否可以刷新並保留先前選擇的排序列/順序?

Out-GridView不支持自動刷新。 Out-GridViewGet-Process結果(在此代碼中僅調用一次)並將其顯示在gridview中。

要獲得自動刷新,您需要在計時器上使用自定義更新邏輯創建自己的自定義表單,或者創建一個關閉gridview並在x秒后重新打開它的循環。 像這樣:

test.ps1

param(
[int]$waitseconds = 60
)

while($true) {
    Start-Process -FilePath powershell.exe -ArgumentList "-WindowStyle Hidden -Command &{ Get-Process | out-gridview; sleep $waitseconds; exit }" -Wait
}

用法:

test.ps1

要么

test2.ps1 -waitseconds 5

請注意,每次刷新時,gridview都會將焦點放在屏幕上(顯示在頂部)。

要獲得所需的所有功能,您需要創建自己的表單。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM