我有一個腳本可以啓動一個事件並等待用戶按任意鍵停止腳本執行。我試圖找到一種方法來顯示定時器(腳本運行了多長時間),同時在Read-Host上等待用戶輸入。有什麼辦法可以做到這一點?Powershell顯示已用時間
編輯:感謝所有的輸入。這工作
$Time = [System.Diagnostics.Stopwatch]::StartNew()
while ($true) {
$CurrentTime = $Time.Elapsed
write-host $([string]::Format("`rTime: {0:d2}:{1:d2}:{2:d2}",
$CurrentTime.hours,
$CurrentTime.minutes,
$CurrentTime.seconds)) -nonewline
sleep 1
if ($Host.UI.RawUI.KeyAvailable -and ("q" -eq $Host.UI.RawUI.ReadKey("IncludeKeyUp,NoEcho").Character)) {
Write-Host "Exiting now"
break;
}
}
看看這裏在PowerShell背景中使用WPF用戶界面http://www.nivot.org/blog/post/2008/05/23/BackgroundTimerPowerShellWPFWidget –