schtasks.exe
schtasks.exe — это консольная утилита операционной системы Microsoft Windows, предназначенная для создания, изменения, удаления, запуска и просмотра запланированных задач на локальном или удалённом компьютере. Утилита является частью компонента «Планировщик заданий» (Task Scheduler) и предоставляет интерфейс командной строки для управления задачами, которые автоматически выполняются в определённое время или при наступлении заданных событий. Файл schtasks.exe входит в состав всех современных версий Windows, начиная с Windows XP.
История
Утилита schtasks.exe была впервые представлена в операционной системе Windows XP (2001 год) как замена устаревшим командам at.exe, использовавшимся в Windows NT 4.0 и Windows 2000. В отличие от at.exe, которая поддерживала только однократные или повторяющиеся задачи с минимальным набором параметров, schtasks.exe предоставила расширенные возможности: задание условий запуска (например, при простое системы или при входе пользователя), настройка приоритетов, указание учётных данных для выполнения задачи, а также поддержка XML-формата для импорта и экспорта задач.
В Windows Vista и более поздних версиях (Windows 7, 8, 10, 11) schtasks.exe была интегрирована с новым API Планировщика заданий, что позволило управлять задачами с более сложными триггерами (например, по событиям в журнале Windows, при подключении или отключении питания, при изменении состояния сети). В Windows 10 и 11 утилита сохранила обратную совместимость с командами из более ранних версий.
Синтаксис и основные параметры
schtasks.exe использует синтаксис командной строки, где действия задаются с помощью ключей (параметров). Основные команды включают:
- /Create — создание новой задачи.
- /Delete — удаление существующей задачи.
- /Query — отображение списка запланированных задач.
- /Change — изменение параметров задачи (например, времени запуска, учётных данных, флагов).
- /Run — немедленный запуск задачи вне расписания.
- /End — принудительное завершение выполняющейся задачи.
Каждая команда поддерживает дополнительные параметры, такие как /TN (имя задачи), /TR (путь к исполняемому файлу или команде), /SC (тип расписания: MINUTE, HOURLY, DAILY, WEEKLY, ONLOGON, ONIDLE, ONEVENT и другие), /ST (время начала), /SD (дата начала), /ED (дата окончания), /RU (учётная запись, от имени которой выполняется задача), /RP (пароль учётной записи) и /IT (интерактивный режим, позволяющий задаче взаимодействовать с рабочим столом пользователя).
Пример команды для создания задачи, запускающей скрипт ежедневно в 9:00: `` schtasks /Create /TN "Ежедневный_бэкап" /TR "C:\Scripts\backup.bat" /SC DAILY /ST 09:00 /RU SYSTEM ``
Применение
Системное администрирование
schtasks.exe широко используется системными администраторами для автоматизации рутинных операций: резервного копирования данных, очистки временных файлов, обновления программного обеспечения, отправки отчётов по электронной почте, мониторинга состояния серверов. Утилита позволяет запускать задачи от имени встроенных учётных записей (например, SYSTEM, LOCAL SERVICE, NETWORK SERVICE) или от имени доменных пользователей, что важно для выполнения действий, требующих повышенных привилегий.
Автоматизация в скриптах
Благодаря поддержке командной строки, schtasks.exe часто включается в пакетные файлы (.bat, .cmd) и сценарии PowerShell для развёртывания и настройки задач на множестве компьютеров. Например, с помощью команды schtasks /Query /FO LIST /V можно получить подробную информацию о всех задачах в формате списка, что удобно для инвентаризации.
Использование в образовательных и исследовательских целях
Утилита применяется для изучения механизмов планирования задач в Windows, а также для демонстрации принципов работы операционной системы в учебных курсах по информатике и системному администрированию.
Безопасность и риски
Несанкционированное использование
Злоумышленники могут использовать schtasks.exe для закрепления в системе (persistence) — создания задач, которые автоматически запускают вредоносное ПО при входе пользователя в систему, при загрузке системы или по расписанию. Такие задачи могут маскироваться под легитимные имена (например, «Обновление Windows» или «Adobe Flash Player Updater»). Для защиты рекомендуется регулярно проверять список запланированных задач с помощью команды schtasks /Query /FO LIST /V и анализировать подозрительные записи.
Требования к правам доступа
Для создания, изменения или удаления задач требуются права администратора (локального или доменного). Обычные пользователи могут только просматривать список задач, но не могут изменять параметры задач, созданных другими пользователями или системой. Исключение составляют задачи, созданные самим пользователем в его собственном контексте.
Логирование и аудит
Windows ведёт журнал событий, связанных с Планировщиком заданий (журнал Microsoft-Windows-TaskScheduler/Operational). События с кодами 106 (задача создана), 107 (задача изменена), 108 (задача удалена), 129 (задача запущена) и 130 (задача завершена) могут быть использованы для обнаружения подозрительной активности. Администраторы могут настроить аудит на эти события с помощью групповых политик.
Ограничения
schtasks.exeне поддерживает управление задачами, созданными через графический интерфейс Планировщика заданий, если они используют сложные триггеры (например, запуск при подключении USB-устройства). Для таких задач требуется редактирование через MMC-оснасткуtaskschd.mscили через PowerShell-командлетыNew-ScheduledTaskTrigger.- Утилита не может изменять параметры задачи, если она выполняется в данный момент (за исключением принудительного завершения через
/End). - При работе с удалёнными компьютерами требуется, чтобы служба «Удалённое управление Windows» (WinRM) была настроена и запущена, а также чтобы у пользователя были соответствующие права на удалённом компьютере.
Альтернативы
В современных версиях Windows (начиная с Windows 8) Microsoft рекомендует использовать PowerShell-командлеты для управления Планировщиком заданий, такие как New-ScheduledTask, Register-ScheduledTask, Get-ScheduledTask, Set-ScheduledTask и Unregister-ScheduledTask. Эти командлеты предоставляют более гибкий интерфейс, поддерживают работу с объектами и позволяют задавать сложные триггеры и действия. Однако schtasks.exe остаётся актуальной для сценариев, где требуется совместимость с более старыми версиями Windows (Windows XP, Windows Server 2003) или где использование PowerShell невозможно (например, в ограниченных средах).
См. также
- Планировщик заданий Windows
- Командная строка Windows
- PowerShell
Источники
- Microsoft Docs: Schtasks — документация по команде
schtasks.exe(версии Windows 10 и Windows Server 2019). - Microsoft Support: Описание команды Schtasks в Windows XP.
- TechNet: Task Scheduler — обзор компонента Планировщика заданий.
- Книга «Windows Internals, Part 1» (7-е издание), раздел «Task Scheduler».
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →