Запускать пакетный файл каждые x секунд, используя PowerShell - PullRequest
7 голосов
/ 11 марта 2010

Я бы хотел использовать скрипт Windows PowerShell для запуска командного файла каждые x секунд. Так что это один и тот же пакетный файл, запускаемый снова и снова.

Я немного посмотрел, но не могу найти то, что ищу. Это то, что я хочу запустить на компьютере с Windows XP. Я использовал Windows Scheduler много раз прежде для чего-то подобного, но по какой-то причине Windows Scheduler запускается только один раз ... Тогда не более. Я также не хочу, чтобы сам пакетный файл вызывался, потому что он выдает ошибку после того, как он выполняется так много раз.

1 Ответ

13 голосов
/ 11 марта 2010

Просто поместите вызов в пакетный файл в цикл while, например ::100100

$period = [timespan]::FromSeconds(45)
$lastRunTime = [DateTime]::MinValue 
while (1)
{
    # If the next period isn't here yet, sleep so we don't consume CPU
    while ((Get-Date) - $lastRunTime -lt $period) { 
        Start-Sleep -Milliseconds 500
    }
    $lastRunTime = Get-Date
    # Call your batch file here
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...