У меня есть script, который запускает событие и ждет, чтобы пользователь нажал любую клавишу, чтобы остановить выполнение script. Я пытался найти способ показать таймер (как долго работает script), ожидая ввода пользователя в Read-Host. Есть ли способ сделать это?
Изменить: Спасибо за все входные данные. Это работает
$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;
}
}