Українська
Appearance
Українська
Appearance
Task Scheduler (Планувальник завдань) використовується для автоматизації періодичних завдань у WSL, уникаючи повторюваних ручних операцій з обслуговування. Він надає візуальний інтерфейс керування, який дозволяє створювати та керувати запланованими завданнями без необхідності запам'ятовувати складні параметри командного рядка.
Приклади сценаріїв використання:
Усі завдання збираються в шляху \WSLDashboard\UserTasks\ Планувальника завдань Windows для централізованого перегляду та керування. Ви можете в реальному часі бачити статус завдання (Готово / Виконується / Вимкнено) в інтерфейсі.
Ви можете завантажити приклади скриптів (резервне копіювання дистрибутивів) із репозиторію спільноти нижче, щоб швидко розпочати:
https://github.com/owu/wsl-community
Це репозиторій коду, який спільно створюється користувачами. Запрошуємо вас надсилати Pull Request для додавання скриптів або обміну найкращими практиками.
Для кожного запланованого завдання можна налаштувати команду (скрипт або виконуваний файл) з наступними параметрами:
| Параметр конфігурації | Опис |
|---|---|
| Команда виконання | Шлях до скрипта або виконуваного файлу. Підтримуються формати .bat, .ps1, .cmd, .exe, .py та інші. Файл можна вибрати через кнопку "Огляд". |
| Параметри команди | Додаткові параметри, що передаються команді (необов'язково). |
| Права адміністратора | При позначці завдання виконуватиметься з найвищими правами, підходить для операцій, що потребують підвищення UAC. |
Після створення завдання ви можете виконувати такі операції:
| Операція | Опис |
|---|---|
| Запустити негайно | Примусово запустити завдання негайно, незалежно від правил розкладу. |
| Увімкнути/вимкнути | Призупинити або відновити автоматичне планування завдання. |
| Видалити | Видалити завдання з Планувальника завдань. |
Планування завдань використовує стандартний 5-пільний Cron-вираз для визначення правил виконання у наступному форматі:
хвилина година день місяць тиждень| Поле | Діапазон значень | Опис |
|---|---|---|
| хвилина | 0 - 59 | Якої хвилини кожної години виконувати |
| година | 0 - 23 | Якої години кожного дня виконувати |
| день | 1 - 31 | Якого дня кожного місяця виконувати |
| місяць | 1 - 12 | Якого місяця кожного року виконувати |
| тиждень | 0 - 7 | 0 і 7 позначають неділю |
Кожне поле підтримує наступний синтаксис:
* —— відповідає всім значенням (наприклад, * * * * * означає виконання щохвилини)*/N —— виконання через кожні N одиниць (наприклад, */5 * * * * означає виконання кожні 5 хвилин)0 9 * * 1 означає виконання щопонеділка о 9:00)Примітка: Значення, розділені комами (наприклад,
1,15), та вирази діапазону (наприклад,1-5) не підтримуються. Додаткові обмеження див. у розділі Застереження нижче.
Це програмне забезпечення не запускає рідний демон Cron, а перекладає Cron-вирази у параметри тригерів Планувальника завдань Windows (schtasks.exe). Для точної відповідності парсер підтримує лише 7 комбінованих шаблонів, які охоплюють більшість сценаріїв запланованих завдань:
| # | Шаблон | Опис | Сценарій використання |
|---|---|---|---|
| 1 | * * * * * | Виконання щохвилини | Завдання моніторингу та виявлення в реальному часі |
| 2 | */N * * * * | Виконання кожні N хвилин | Завдання періодичної перевірки |
| 3 | M * * * * | Виконання на M-й хвилині кожної години (напр. 3 * * * *) | Завдання на початку години |
| 4 | M H * * * | Виконання щодня о H:M (напр. 0 3 * * *) | Щоденне обслуговування, наприклад очищення журналів щоранку |
| 5 | M H * * DOW | Виконання у визначений день тижня о H:M (напр. 0 12 * * 1) | Щотижневі завдання, наприклад резервне копіювання щопонеділка |
| 6 | M H D * * | Виконання у визначений день місяця о H:M | Щомісячні завдання, наприклад створення звіту 1-го числа |
| 7 | M H D MON * | Виконання у визначений місяць і день року о H:M | Щорічні завдання, наприклад у визначеному місяці |
Якщо вираз не належить до жодного з 7 шаблонів вище, система вважатиме його
Unsupported cron patternі відмовить у створенні.
Оскільки реалізація базується на Планувальнику завдань Windows, парсер Cron цього програмного забезпечення має такі відмінності від стандартного Linux Cron:
,) та діапазони (-) Стандартний Cron дозволяє використовувати кому для визначення кількох дискретних моментів часу (наприклад, 1,15,30 * * * * означає 1, 15, 30 хвилини), або дефіс для визначення діапазону (наприклад, 1-5 * * * * означає з 1 по 5 хвилину).
Обмеження цього програмного забезпечення: Кожне поле може містити лише одиничне число, зірочку (*) або крок (*/N), коми та дефіси не підтримуються.
Стандартний Cron дозволяє довільну комбінацію полів (наприклад, * 3 * * * означає кожну хвилину протягом 3 години ночі), але це програмне забезпечення підтримує лише 7 фіксованих шаблонів, перелічених вище. Вирази, що не входять у цей діапазон, будуть відхилені.
У стандартному Cron, */5 * * * * суворо вирівнюється до хвилин 0, 5, 10, 15... години. Це програмне забезпечення перекладає це в параметр /SC MINUTE /MO 5 Windows, де логіка обробки Windows полягає в обчисленні інтервалу з моменту створення або активації завдання.
Наприклад, якщо ви зберегли та активували завдання, яке виконується кожні 5 хвилин, о 10:02, воно вперше виконається о 10:07, потім о 10:12, а не вирівняється до стандартного 10:05.