Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Действие по тайм-ауту (http://forum.oszone.net/showthread.php?t=304226)

mapisic 20-08-2015 09:53 2543780

Действие по тайм-ауту
 
Как сделать чтобы, если таймаут не вышел то делать одно действие, если вышел - повторить всё сначала.
Код:

$timeout = new-timespan -Minutes 1
$sw = [diagnostics.stopwatch]::StartNew()
while ($start){
    if (-not $timeout)
    {
    write-host "Hello World!"
    }
    else
    {
    write-host "Timed out" 
#  start-sleep -seconds 5
    return $start
    }
}


Kazun 20-08-2015 10:03 2543783

Код:

$timeout = new-timespan -Minute 1
$sw = [diagnostics.stopwatch]::StartNew()
while (1){
    if ($sw.Elapsed -le $timeout)
    {
                write-host "Hello World!"
    }
    else
    {
                $sw = [diagnostics.stopwatch]::StartNew()   
        }
}


mapisic 20-08-2015 10:29 2543791

А если выполняется какая нибудь команда (например ping) как послать сигнал завершения?
Код:

exit, ^C
не работает

Kazun 20-08-2015 10:47 2543800

Ctrl+C, завершить процесс из диспетчера задач, завершить через taskkill, полно способов.


Используйте лучше Job(Start-Job - Stop-Job), подробней:

Код:

PS > Get-help about_Job

Name                              Category
----                              --------
about_Jobs                        HelpFile
about_Job_Details                HelpFile



Время: 13:47.

Время: 13:47.
© OSzone.net 2001-