На своїй машині Windows 7 я можу запустити щось на кшталт:
schtasks.exe /Change /TN "MyTaskName" /Disable
Але / Disable, здається, не доступний у Windows XP - чи є якийсь спосіб відключити його з командного рядка?
На своїй машині Windows 7 я можу запустити щось на кшталт:
schtasks.exe /Change /TN "MyTaskName" /Disable
Але / Disable, здається, не доступний у Windows XP - чи є якийсь спосіб відключити його з командного рядка?
Відповіді:
/disable
Перемикач тільки особливість Vista / 7 / 2008R2 / 2012 .
Ви можете просто перейменувати .job
файл завдання, щоб "відключити" його.
schtasks /Create /SC HOURLY /TN "TEST TASK" /TR notepad
schtasks
TaskName Next Run Time Status
==================================== ======================== ===============
TEST TASK 09:45:00, 7/26/2010
move "C:\WINDOWS\Tasks\TEST TASK.job" "C:\WINDOWS\Tasks\TEST TASK.bak"
schtasks
INFO: There are no scheduled tasks present in the system.
Для того, щоб "включити" завдання перейменуйте .bak
файл у .job
:
schtasks
INFO: There are no scheduled tasks present in the system.
move "C:\WINDOWS\Tasks\TEST TASK.bak" "C:\WINDOWS\Tasks\TEST TASK.job"
schtasks
TaskName Next Run Time Status
==================================== ======================== ===============
TEST TASK 09:45:00, 7/26/2010
C:\Windows\System32\schtasks.exe
двійкові файли з встановлення 2003+. Розмістіть цей двійковий файл на машині XP та зателефонуйте йому, використовуючи його явний шлях. Я щойно успішно перевірив відключення завдання, створеного в XP schtasks
за допомогою 2003 року schtasks
.
Для того, щоб досягти поведінки одноразового запуску, ви завжди можете просто зашифрувати сценарій bat "обгортки", який перевіряє наявність файлу блокування.
Створіть файл блокування під час першого запуску, і кожен там після сценарію обгортки просто вийде, якщо він знайде файл блокування:
if exist Lock.file goto :eof