schtasks - создать задачу без расписания, которая выполняется по требованию

8

Я пытаюсь использовать schtasks.exeи создать одноразовую задачу, которая выполняется по требованию. Я просто хочу создать задачу без расписания, но команда schtasks /create /tn TestTaskне работает Invalid syntax. Mandatory option 'sc' is missing.. Есть ли вариант, который я пропускаю?

Warz
источник

Ответы:

5

Создайте задание и настройте его на ОДИН РАЗ в прошлом. Задача будет существовать, и вы можете запустить ее по своему желанию.

Мультивселенная ИТ
источник
1
Это не работает на моей машине - любой другой обходной путь вы знаете? Мы запланировали задачу с ONCE на 01.01.2999, однако это не чистое решение.
DR
2
@DR У нас есть путешественник во времени! Для остальных из нас 01.01.2999 не в прошлом. Это также после 19 января 2038 03:14:08 по Гринвичу, Конец Unix Time . Вот почему это не сработало на вашей машине.
Эса Йокинен
4

Вместо использования фиктивного времени в прошлом или будущем, вы можете установить задачу для запуска фиктивного события:

SCHTASKS /Create /TN TaskOnEvent /TR notepad.exe /SC ONEVENT /EC Application /MO *[System/EventID=777] /f

Тогда вы можете запустить его по требованию:

SCHTASKS /Run /TN "TaskOnEvent"

Или вызвать его, зарегистрировав событие:

EVENTCREATE /ID 777 /L APPLICATION /T INFORMATION /SO DummyEvent /D "Initiate scheduled task."

.. Или создать задачу в графическом интерфейсе, экспортировать и вызвать xml:

SCHTASKS /Create /TN "TaskOnEvent" /xml "C:\TaskOnEvent.xml"
harvey263
источник
1

/sc ONCE /st 00:00 должно быть достаточно для создания задачи, которая никогда не запускается сама по себе и должна запускаться явно

sactiw
источник
0

Как уже упоминалось, вы можете создать задачу в GUI, экспортировать и вызвать XML:

SCHTASKS /Create /TN "TaskOnEvent" /xml "C:\TaskOnEvent.xml"

... Вам не нужно указывать какие-либо триггеры, если вы создаете через графический интерфейс.

Даррен
источник
0

/sc once /st 00:00не будет работать, потому что вы не можете запланировать задачу в прошлом. Но если вы используете ТЕКУЩЕЕ ВРЕМЯ, оно будет работать, и задача никогда не будет выполнена ... (но вы получите предупреждение) ... протестировано под Windows 10 ...

/sc once /st 20:56за этот пост!

fvlinden
источник