Системному администратору часто приходится писать разные скрипты и настраивать их запуск по расписанию в Планировщике заданий (Task Scheduler). Сегодня мне нужно настроить запуск определённого URL каждые 30 минут. Время работы скрипта может быть разное.
Открываю Планировщик заданий. Создаю папку, в которой будет находиться расписание, называю её IIS.
Нажимаю Create Task.
В первой вкладке General указываю:
- Name. Любое название расписания.
- Description. Любое описание, не обязательно.
- С помощью кнопки Change User or Group можно выбрать пользователя, от имени которого будет выполняться скрипт. Я выбираю локального администратора.
- Run whether user is logged on or not. Устанавливаю радиокнопку, чтобы скрипт выполнялся независимо от того, залогинен пользователь или нет. В этом случае нас попросят после сохранения расписания указать пароль пользователя.
- Run with highest privileges. Устанавливаю галку для запуска скрипта с правами администратора.
Перехожу на вкладку Triggers. Здесь нужно создать триггер для расписания. New.
В настройках триггера:
- Begin the task. Выбираю On a schedule. Запуск по расписанию.
- Daily. Запускать каждый день.
- Recur every 1 days. Каждый день без пропусков.
- Repeat task every 30 minutes. Запускать каждые 30 минут for a duration 1 day. Весь день.
- Stop tasks if it runs longer than 1 day. Останавливать задачу, если она выполняется более 1 дня.
- Enabled. Включить расписание.
OK.
Расписание создано.
Перехожу на вкладку Actions. Здесь нужно указать скрипт для выполнения. New.
Дёргать URL будем с помощью PowerShell.
- Actions: Start a program. Выполнить программу.
- Program/script. Указываю powershell
- Add arguments (optional). Здесь нужно указать параметры для запуска скрипта. Я пишу:
-ExecutionPolicy unrestricted -Command "(New-Object Net.WebClient).DownloadString(\"https://example.com\")"
Где в скобках указан нужный URL.
OK.
Запуск программы настроен.
Перехожу на вкладку Conditions. Здесь определяются условия для запуска. Оставляю одну галку, просто на всякий случай:
- Wake the computer to run this task. Разбудить компьютер для выполнения скрипта.
Перехожу на вкладку Settings. Здесь есть ряд полезных настроек. Ставлю галки:
- Allow task to be run on demand. Разрешить запуск скрипта по запросу.
- Run task as soon as possible after a scheduled start is missing. Запускать скрипт как можно раньше, если задача пропущена.
- Stop the task if it runs longer than 1 day. Останавливать скрипт, если он выполняется дольше суток.
- If the running task does not end when requested, force it to stop. Если задача не завершилась к моменту повторного запуска, то остановить её.
- Do not start a new instance. Не запускать второй экземпляр.
OK.
Указываю пароль локального администратора. OK.
Теперь скрипт будет запускаться по расписанию. В разделе History можно отслеживать результат выполнения.