Удалить задачу из планировщика windows 10 powershell

Обновлено: 04.07.2024

Описание процедур создания запланированных заданий и управления ими.

Подробное описание

В этом документе показано, как выполнять базовые задачи по созданию запланированных заданий и управлению ими. Дополнительные сведения о более сложных задачах см. в разделе about_Scheduled_Jobs_Advanced.

Дополнительные сведения о командлетах, содержащихся в модуле PSScheduledJob , см. в разделе PSScheduledJob.

Создание запланированного задания

Чтобы создать запланированное задание, используйте Register-ScheduledJob командлет. Командлету требуется имя, а также команды или скрипт, выполняемые заданием. Можно либо запустить задание немедленно, добавив параметр RunNow , либо создать триггер задания и задать параметры задания при создании задания или изменить существующее задание.

Чтобы создать задание, запускающее скрипт, используйте параметр FilePath , чтобы указать путь к файлу скрипта. Чтобы создать задание, запускающее команды, используйте параметр ScriptBlock .

Register-ScheduledJob Командлет создает процессжоб, который выполняет Get-Process команду. Это запланированное задание имеет параметры задания по умолчанию и не имеет триггера задания.

Создание триггера задания

Триггеры заданий запускают запланированное задание автоматически. триггер задания может быть однократным или повторяющимся или событием, например при входе пользователя в систему или запуске Windows. Каждое задание может иметь ноль, один или несколько триггеров заданий.

Чтобы создать триггер задания, используйте New-JobTrigger командлет. Следующая команда создает триггер задания, который запускает задание каждый понедельник и четверг в 5:00 AM. Команда сохраняет триггер задания в $T переменной.

Триггеры задания не являются обязательными. Вы можете запустить запланированное задание в любое время, добавив параметр RunNow в Register-ScheduledJob команду или используя Start-Job командлеты.

Добавление триггера задания

При добавлении триггера задания в запланированное задание триггер задания добавляется в XML-файл запланированного задания для запланированного задания и становится частью запланированного задания.

Вы можете добавить триггер задания в запланированное задание при создании запланированного задания или изменить существующее задание. Вы можете в любое время изменить триггер задания для запланированного задания.

PowerShell использует одни и те же Триггеры заданий, которые планировщик задач использует. Подробные сведения о триггерах заданий см. в разделе справки по командлету New-JobTrigger .

В следующем примере Сплаттинг используется для создания $JobParms значений параметров, которые передаются в Register-ScheduledJob командлет. Дополнительные сведения см. в разделе about_Splatting. md. Register-ScheduledJob Использует @JobParms для создания запланированного задания. Для указания триггера задания в переменной используется параметр Trigger $T .

Вы также можете добавить триггер задания в существующее запланированное задание в любое время. Add-JobTrigger Командлет добавляет триггер задания в $T переменную в запланированное задание процессжоб .

В результате триггер задания запускает процессжоб автоматически каждый понедельник и четверг в 5:00 AM.

Как получить триггер задания

Чтобы получить триггер задания для запланированного задания, используйте Get-JobTrigger командлет. Используйте параметры Name, ID и InputObject , чтобы указать запланированное задание, а не триггер задания.

Get-JobTrigger Возвращает триггер задания процессжоб.

Создание параметров задания

Параметры задания устанавливают условия для запуска и выполнения задания. Каждое задание имеет параметры задания по умолчанию, если они не были изменены. Поскольку параметры задания могут препятствовать запуску задания в запланированное время, важно понимать параметры задания и использовать их аккуратно.

PowerShell использует те же параметры задания, которые планировщик задач использует. Подробные сведения о параметрах задания см. в разделе справки New-scheduledjoboptions.

Параметры задания хранятся в XML-файле запланированного задания. Вы можете задать параметры задания при создании запланированного задания или изменить их в любое время.

New-ScheduledJobOption Командлет создает параметр запланированного задания, в котором параметру запланированного задания вакеторун присвоено значение true. Параметр вакеторун запускает запланированное задание, даже если компьютер находится в спящем или спящем режиме в запланированное время запуска. Команда сохраняет параметры задания в $O переменной.

Получение параметров задания

Чтобы получить параметры задания запланированного задания, используйте Get-ScheduledJobOption командлет. Используйте параметры Name, ID и InputObject , чтобы указать запланированное задание, а не параметры задания.

Get-ScheduledJobOption Возвращает параметры задания процессжоб.

Изменение параметров задания

Можно изменить параметры задания запланированного задания при создании запланированного задания или изменении существующего задания.

Сплаттед $JobParms передаются в Add-JobTrigger командлет для создания задания процесса. Для указания параметров задания в переменной используется параметр scheduledjoboptions $O .

Можно также изменить параметры задания на существующее запланированное задание в любое время. Следующая команда использует командлет, Set-ScheduledJobOption чтобы изменить значение параметра вакеторун процессжоб scheduledJob на true.

Set Командлеты в модуле PSScheduledJob , такие как Set-ScheduledJobOption командлет, не имеют параметров имени или идентификатора . Параметр InputObject можно использовать для указания параметров запланированного задания или передачи по конвейеру запланированного задания из Get-ScheduledJobOption командлета в Set-ScheduledJobOption .

В этом примере используется Get-ScheduledJob командлет для получения процессжоб. Он использует Get-ScheduledJobOption командлет, чтобы получить параметры задания в процессжоб , и командлет, Set-ScheduledJobOption чтобы изменить параметр задания вакеторун в процессжоб на true.

Получение экземпляров запланированных заданий

При запуске запланированного задания PowerShell создает экземпляр задания, аналогичный стандартному фоновому заданию PowerShell. Get-Job Stop-Job Для управления экземплярами заданий можно использовать командлеты задания, такие как, и Receive-Job .

Чтобы использовать командлеты задания для экземпляров запланированных заданий, необходимо импортировать модуль PSScheduledJob в сеанс. Чтобы импортировать модуль PSScheduledJob , введите Import-Module PSScheduledJob или используйте любой командлет запланированного задания, например Get-ScheduledJob .

Чтобы получить все экземпляры запланированных заданий PowerShell и все активные стандартные задания, используйте Get-Job командлет. Import-Module Командлет импортирует модуль PSScheduledJob и Get-Job получает задания на локальном компьютере.

Get-Job Возвращает экземпляры процессжоб на локальном компьютере.

Отображение по умолчанию не показывает время начала, которое обычно различает экземпляры одного и того же запланированного задания.

Get-Job Командлет отправляет объекты по конвейеру. Format-Table Командлет отображает свойства Name, ID и BeginTime запланированного задания.

Получение результатов запланированного задания

Чтобы получить результаты экземпляра запланированного задания, используйте Receive-Job командлет.

Чтобы использовать командлеты задания для экземпляров запланированных заданий, необходимо импортировать модуль PSScheduledJob в сеанс. Чтобы импортировать модуль PSScheduledJob , введите Import-Module PSScheduledJob или используйте любой командлет запланированного задания, например Get-ScheduledJob .

В этом примере получаются результаты последнего экземпляра запланированного задания процессжоб (ид = 51).

Результаты запланированных заданий сохраняются на диске, поэтому параметр сохранения Receive-Job не требуется. Однако без параметра сохранения результаты запланированного задания можно получить только один раз в каждом сеансе PowerShell. Чтобы запустить новый сеанс PowerShell, введите PowerShell или откройте новое окно PowerShell.

date

07.04.2021

directory

PowerShell, Windows 10, Windows Server 2016

comments

комментариев 9

Большинство пользователей и администраторов привыкли использовать графический интерфейс консоли Taskschd.msc для создания заданий планировщика Windows (Task Scheduler), запускаемых по расписанию. Однако в различных скриптах и автоматизируемых задачах для создания заданий планировщика гораздо удобнее использовать возможности PowerShell. В этой статье мы покажем, как создавать и управлять заданиями планировщика Windows из PowerShell.

Управление заданиями Task Scheduler с помощью PowerShell

В Windows 10/Windows Server 2016 для управления задачами в планировщике используется PowerShell модуль ScheduledTasks. Список командлетов в модуле можно вывести так:

Get-Command -Module ScheduledTasks

  • Disable-ScheduledTask
  • Enable-ScheduledTask
  • Export-ScheduledTask
  • Get-ClusteredScheduledTask
  • Get-ScheduledTask
  • Get-ScheduledTaskInfo
  • New-ScheduledTask
  • New-ScheduledTaskAction
  • New-ScheduledTaskPrincipal

powershell командлеты из модуля ScheduledTasks

Совет. Ранее в Windows для создания и управления заданиями планировщика в основном использовались встроенная консольная утилита schtasks.exe.

Как создать задание планировщика с помощью PowerShell?

В современных версиях PowerShell (начиная с PowerShell 3.0 в Windows Server 2012/Windows 8) для создания заданию планировщика нужно использовать командлеты New-ScheduledTaskTrigger и Register-ScheduledTask.

Предположим, наша задача создать задание планировщика, которое должно запускаться при загрузке компьютера (или в определенное время) и выполнять какой-то PowerShell скрипт. Создадим задание планировщика с именем StartupScript_PS. Данное задание должно каждый день в 10:00 запускать PowerShell скрипт, хранящийся в файле C:\PS\StartupScript.ps1 из-под учетной записи системы (SYSTEM). Задание будет выполняться с повышенными привилегиями (галка “Run with highest privileges”).

$Trigger= New-ScheduledTaskTrigger -At 10:00am -Daily
$User= "NT AUTHORITY\SYSTEM"
$Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "C:\PS\StartupScript.ps1"
Register-ScheduledTask -TaskName "StartupScript_PS" -Trigger $Trigger -User $User -Action $Action -RunLevel Highest –Force

Если задание успешно создано, появится надпись Ready.

создать задание планировщика с помощью Register-ScheduledTask

Теперь ваш PowerShell скрипт будет запускаться по указанному расписанию. Если на вашем компьютере настроена PowerShell Execution Policy, блокирующая запуск скриптов PS1, вы можете запустить скрипт их планировщика с параметром –Bypass.

Используйте такую строку при создании нового задания:

$Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument “-NoProfile -NoLogo -NonInteractive -ExecutionPolicy Bypass -File C:\PS\StartupScript.ps1"

Совет. Если нужно, чтобы задание запускалось каждый раз при загрузке компьютера, первая строка должна быть такой:
$Trigger= New-ScheduledTaskTrigger -AtStartup
Если нужно выполнять задание при входе пользователя:
$Trigger= New-ScheduledTaskTrigger –AtLogo n

Откройте консоль Taskschd.msc и проверьте, что проверьте, что в Task Scheduler Library появилось новое задание планировщика.

консоль Task Scheduler с новым заданием планировщика

В версии Powershell 2.0 (Windows 7, Windows Server 2008 R2) для создания повторяющегося задания (ScheduledJob) из PowerShell необходимо воспользоваться COM интерфейсом Schedule.Service (либо обновите версию PowerShell). В этом примере мы создадим задание планировщика, которое во время запускает определённый файл с PowerShell скриптом во время загруки. Задание выполняется с правами системы (System).

Получение информации и запуск заданий планировщика из PowerShell

Вы можете вывести список всех активных заданий планировщика в Windows с помощью команды:

Get-ScheduledTask -TaskPath | ? state -ne Disabled

Чтобы получить информацию о конкретном задании:

Get-ScheduledTask CheckServiceState_PS| Get-ScheduledTaskInfo

информация о запуске задания Get-ScheduledTaskInfo

Вы можете отключить это задание:

Get-ScheduledTask CheckServiceState_PS | Disable-ScheduledTask

Чтобы включить задание:

Get-ScheduledTask CheckServiceState_PS | Enable-ScheduledTask

Чтобы запустить задание немедленно (не дожидаясь расписания), выполните:

отключить/включить/запустить задание планировщика с помощью PowerShell

Чтобы полностью удалить задание из Task Scheduler:

Unregister-ScheduledTask -TaskName CheckServiceState_PS

Если нужно изменить имя пользователя, из-под которого запускается задание и, например, режим совместимости, используйте командлет Set-ScheduledTask:

$task_user = New-ScheduledTaskPrincipal -UserId 'winitpro\kbuldogov' -RunLevel Highest
$task_settings = New-ScheduledTaskSettingsSet -Compatibility 'Win7'
Set-ScheduledTask -TaskName CheckServiceState_PS -Principal $task_user -Settings $task_settings

При появлении ошибки “Set-ScheduledTask : No mapping between account names and security IDs was done” проверьте, что у вас указано правильное имя пользователя.

Set-ScheduledTask : No mapping between account names and security IDs was done

Экспорт и импорт заданий планировщика в XML файл

С помощью PowerShell можно экспортировать любое задания планировщика в текстовый XML файл для распространения на другие компьютеры. Вы можете экспортировать задание из графического интерфейса Task Scheduler или из консоли PowerShell.

Следующая команда экспортирует задание StartupScript_PS в файл StartupScript_PS.xml:

Export-ScheduledTask "StartupScript_PS" | out-file c:\temp\StartupScript_PS.xml

Export-ScheduledTask - импорт задания планировщика в xml файла

schtasks /query /tn "NewPsTask" /xml >> "c:\ps\NewPsTask.xml"

После того, как настройки задания планировщика экспортированы в XML файл, его можно импортировать на любой другой компьютер с помощи графической консоли, SchTasks.exe или PowerShell.

Воспользуйте командлетом PowerShell Register-ScheduledTask чтобы параметры задания из файла и зарегистрировать его:

Register-ScheduledTask -Xml (Get-Content “\\Server1\public\NewPsTask.xml” | out-string) -TaskName "NewPsTask"

Примечание. В PowerShell 2.0 (Windows 7/Server 2008 R2) импорт задания также проще выполнить с помощью утилиты schtasks. Первая команда создаст новое задание. Вторая – сразу запустит его (не дожидаясь срабатывания триггера).

schtasks /create /tn "NewPsTask" /xml "\\Server1\public\NewPsTask.xml " /ru corp\aaivanov /rp Pa$$w0rd
schtasks /Run /TN "NewPsTask"

Обратите внимание, что в этом примере указаны данные учетной записи, из-под которой будет запускаться задание. Если имя и пароль учетной записи не указаны, то т.к. они не хранятся в задании, они будут запрошены при импорте.

Создаем задачи в планировщике с Powershell изменяем и запускаем их

Навигация по посту

Работа планировщика в Powershell

Отличительной чертой работы Powershell является то, что мы должны создать каждый из объектов (результат команд) планировщика отдельно, а затем объединить их с помощью 1 команды. Сами объекты делятся на следующие:

  1. Action (Действие) - определяет что мы должны запустить. Действия проявляются как программа (например браузер) с аргументами (открыть определенный сайт). В одной задаче может быть до 32 действий;
  2. Trigger (Триггер) - это событие при котором должно запуститься действие. Событие может быть привязано к времени или каким-то процессом в системе (включение компьютера, вход пользователя и т.д.). Время можно устанавливать как определенное, например в 14:00, так и интервальное - каждые 2 часа. Так же как и действий триггеров может быть несколько.
  3. Settings (Настройки) - дополнительные условия обработки задач. Это может быть перезапуск в случае сбоя задачи или самоудаление если задача не используется.
  4. Security Options (Параметры безопасности) - определяют привилегии и пользователя от имени которого будут запущены задания.

Планировщик задач Windows

3 и 4 пункт не является обязательными при создании задачи т.к. уже имеет настройки по умолчанию.

За создание задач в планировщике отвечает модуль ScheduledTasks, который имеет следующие команды:


Создание скрипта для тестирования

Скрипт сбора логов и сохранения в XML

Пример работы скрипта сбора логов и сохранения в XML

Создание выполняемого действия для планировщика

Создание действия в Powershell для планировщика задач

Действия выше аналогичны следующим настройкам в интерфейсе (т.е. так мы обычно добавляем скрипт Powershell в планировщик):

Создание задачи в планировщике для работы скрипта Powershell

Создание временного события - триггера

Системные события, которые мы можем использовать, следующие:

  • AtLogOn - во время входа пользователя в систему;
  • AtStartup - во время запуска системы.

Аргументы связанные со временем:

  • At - точное время выполнение скрипта;
  • Daily - ежедневно;
  • DaysInterval - интервал в днях. Если указать цифру 1, то подразумевается, что задача будет запускаться ежедневно. Если указать 2 - то задача будет запускаться через день;
  • DaysOfWeek - день недели, когда будет выполнен запуск. Возможны варианты: Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday;
  • Once - запуск будет выполнен единожды;
  • Weekly - запуск по неделям;
  • WeeksInterval - интервал между неделями;
  • RandomDelay - указывает задержку между запусками. Задержка определяется случайно от указанного значения. Принимает не число, а объект TimeSpan;
  • RepetitionDuration - Срок действия задачи. Принимает не число, а объект TimeSpan.
  • RepetitionInterval - время через которое задача будет повторяться. Принимает не число, а объект TimeSpan.

Большую часть команд, связанных со временем, мы можем сочетать вместе. Так, например, мы создадим триггер выполнится однажды в 13:00:

Создание триггера в Powershell для планировщика задач

Еще несколько примеров:

Создание триггера в Powershell для планировщика задач с повторением

Учитывайте, что вы можете использовать несколько триггеров и действий. Для этого вы должны перечислить их через запятую.

TaskPath указывает где была создана задача. В примере выше это произошло в корне планировщика:

Просмотр задач в планировщике Windows

Вы можете использовать аналогичный параметр для регистрации задачи в другой директории:

Способа узнать путь два:

В powershell есть еще одна команда, которая может участвовать в создании задач "New-ScheduledTask". Основное отличие такой команды в том, она не регистрирует (добавляет) задачу в сервис планировщика. Если бы мы использовали обе команды это бы выглядело так:

Запуск и получение дополнительной информации

Запуск задачи планировщика с Powershell

У нас так же есть 2 команды, которые возвращают информацию о задачах.

Первая команда просто возвращает список задач, которые есть в каталогах планировщика их статус и путь:

Получение задач планировщика с Powershell

У команды запуска и получения задач из планировщика можно использовать параметры:

  • TaskName - имя объекта;
  • TaskPath - путь до объекта.

Более полезная команда следующая, так как вернет немного больше информации:

Получение информации о задаче планировщика с Powershell

Само собой все эти команды можно использовать в конвейере:

Если задача занимает много времени и ее нужно остановить - можно выполнить следующие действия:

Фильтрация через Where-Object в Powershell с примерами

Изменение пользователя, параметров безопасности и уровня запуска

  • Пользователь, от имени которого будет выполнен запуск;
  • Выполняется ли задача для вошедших в систему пользователей;
  • Привилегии запуска (от пользователя/администратора);
  • Совместимость.

В графическом интерфейсе эти параметры настраиваются в следующем блоке:

Выполнение задачи планировщика для пользователей вошедших в систему

С помощью следующих команд мы изменим пользователя, повысим права и изменим совместимость:

Использование совместимости и другого пользователя в планировщике задач с Powershell

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

  • Set-ScheduledTask : No mapping between account names and security IDs was done.

Само собой эти же объекты можно использовать при создании (регистрации) задачи в планировщике:

Учитывайте, что у New-ScheduledTaskSettingsSet около 30 возможных параметров (работа при отключенной батареи, максимальное количество перезапусков и т.д.). В примере выше рассмотрено лишь несколько.

Изменение триггеров и действий

С помощью Set-ScheduledTask так же добавляются и изменяются триггеры и действия. Изменение будут заключаться в полной замене существующих триггеров и действий у задач. Вам просто нужно создать объект по аналогии с тем, как это делалось в предыдущих разделах:

Запуск задачи в определенное время с Powershell

Бэкап, удаление и восстановление задач планировщика с Powershell

Удобной возможностью использования Powershell является импорт и экспорт задач планировщика. По сути вы можете создать шаблон, который можно использовать на разных компьютерах без особой работы с кодом. По умолчанию, сам Powershell, не предоставляет прямой возможности бэкапа и восстановления, но это можно сделать через другие команды.

Резервное копирование

Для бэкапа мы можем использовать команду Export-CliXml. Для этого нам нужно будет получить задачу и использовать конвейер:

Резервное копирование задач планировщика с Powershell

Удаление, отключение и включение

Удаление задачи планировщика с Powershell

Если требуется только отключить задачу используйте Disable:

Восстановление

Восстановление выполняется в несколько шагов. Первое - мы должны выполнить импорт XML документа в Powershell:

На одном из сайтов я прочитал, что следующий параметр нужно изменять на "Interactive", так как без него не будет работать задача, но у меня этот параметр не изменялся при экспорте:

Изменение параметра входа пользователей для планировщика с Powershell

Этот параметр связан со входом пользователя через GUI. Аналогичное название в интерфейсе планировщика задач "Выполнять только для пользователей, вошедших в систему". Если этот параметр у вас отличается - вы сможете изменить его так:

Далее нам нужно зарегистрировать эту задачу определяя каждый из параметров отдельно:

Восстановление бэкапа планировщика задач Powershell

Как создавать команды и функции в Powershell вызывать их и передавать параметры

Анализ выполнения и завершения, а так же сравнение

Используя предыдущие команды мы можем выполнить некоторую автоматизацию. Например так мы можем увидеть результат выполненных задач:

Получение результата выполненной задачи планировщика

Часть этих кодов имеет следующую расшифровку (был использован автоматический переводчик):

  • 0 - операция успешно завершена.
  • 1 - Вызывается неправильная функция или неизвестная функция. 2 Файл не найден.
  • 10 - Неправильная среда.
  • 267008 - Задача готова к запуску в следующее запланированное время.
  • 267009 - В данный момент идет выполнение.
  • 267010 - Задача не будет запущена в запланированное время, потому что она отключена.
  • 267011 - Запуск еще не был выполнен.
  • 267012 - Для этой задачи больше нет запланированных запусков.
  • 267013 - Одно или несколько свойств, необходимых для запуска этой задачи по расписанию, не были установлены.
  • 267014 - Последний запуск задачи был прерван пользователем.
  • 267015 - Либо у задачи нет триггеров, либо существующие триггеры отключены или не установлены.
  • 2147750671 - Учетные данные повреждены.
  • 2147750687 - Экземпляр этой задачи уже запущен.
  • 2147943645 - Служба недоступна (установлен ли флажок «Запускать только при входе пользователя в систему»?).
  • 3221225786 - Приложение было закрыто в результате нажатия CTRL + C.
  • 3228369022 - Неизвестное программное исключение.

Альтернативное - вы можете открыть интерфейс планировщика и посмотреть какая ошибка отображается там (она будет текстом).

Получение результата выполненной задачи планировщика в GUI

Далее вы можете создать скрипт для поиска сбойных задач. Например меня интересует только задачи со сбоями, а не успешно работающие. Так как я не знаю всех кодов, мне нужно будет исключить только коды успешного выполнения:

Поиск ошибок в планировщике задач

Такой же подход можно использовать при поиске странных сервисов-программ. Например у нас есть эталонный компьютер/сервер и на нем созданы все нужные задачи. Всех их мы помещаем в один объект, а затем сравниваем с другими экземплярами:

Получение имен задач планировщика с Powershell

Далее, через разные средства, мы можем сравнить этот список на других компьютерах:

Многие из приложений-оптимизаторов, а также те приложения, которые следят за актуальностью версий установленного на ПК программного обеспечения, создают во встроенном планировщике заданий соответствующие задачи, выполняющиеся даже когда запланировавшие их приложения неактивны. Если такая самодеятельность вам не по нраву или созданная задача не была удалена после деинсталляции приложения, вы можете удалить ее из планировщика самостоятельно как минимум тремя способами.

Через сам планировщик заданий

Начнем с самого очевидного и простого способа.

Открываем штатный планировщик выполненной в окошке Run (Win + R) заданий командой taskschd.msc и в левой колонке нажмите мышкой по родительскому каталогу «Библиотека планировщика заданий». Именно в ней сохраняют свои задания сторонние приложений.

Отыщите в средней колонке задание, имя которого указывает на создавшую его программу, нажмите по нему правой кнопкой мыши и выберите «Удалить».

Планировщик заданий

Также можно нажать «Удалить» в правой колонке управления элементами.

В командной строке

Удалить запланированную задачу можно с помощью командной строки.

Это менее удобный способ, к тому же вам нужно знать точное название задачи.

Удаление выполняется в запущенной от имени классической командной строке с использованием консольной утилиты schtasks.exe, распложенной в папке System32 .

Команда удаления выглядит следующим образом:

schtasks /Delete /TN "путь/имя-задачи" /F

Schtasks

Задача будет тут же удалена.

Путь указывать не нужно, если запись задачи располагается в корневом каталоге «Библиотека планировщика заданий».

Удаление задач с помощью командной строки чаще всего находит применение в скриптах.

В PowerShell

Аналогичным целям может служить и консоль PowerShell , в которой предусмотрен ряд командлетов, предназначенных как раз для взаимодействия с запланированными в taskschd.msc задачами.

Команда удаление задания выглядит так:

Unregister-ScheduledTask -TaskName "имя-задачи" -Confirm:$false

Unregister-ScheduledTask

Если задание располагается не в корне, в команду добавляется строка -TaskPath "путь-к-папке", путь указывается относительный, обратные слеши справа и слева удалять не нужно, смотрите скриншот ниже.

TaskPath

В редакторе реестра

Наконец, избавиться от запланированной задачи можно, удалив соответствующий ей ключ реестра.

Откройте редактор реестра командой regedit и разверните ветку:

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree

Подраздел Tree содержит дочерние подразделы с именами расположенных в корне планировщика заданий.

Кликните по выбранной папке ПКМ и выберите «Удалить».

Если ты хочешь удалить или создать запланированную задачу в Windows 10 с помощью Windows PowerShell, этот учебник поможет вам в этом. Вам не нужно открывать планировщик заданий, чтобы создать запланированное задание. Однако вам нужно выполнить некоторые команды, чтобы работа была выполнена.

Создайте запланированную задачу с помощью PowerShell

Чтобы использовать PowerShell для создания запланированной задачи в Windows 10, выполните следующие действия:

  1. Ищи Powershell в поле поиска на панели задач.
  2. Нажмите на Запустить от имени администратора.
  3. Щелкните значок да кнопка.
  4. Введите $ действие переменная для хранения действия.
  5. Введите $ trigger переменная для хранения времени выполнения запланированной задачи.
  6. Введите эту команду, чтобы создать запланированную задачу.

Давайте проверим подробную версию этих шагов.

Сначала вам нужно открыть Windows PowerShell с правами администратора. Для этого найдите «powershell» в поле поиска на панели задач и щелкните соответствующий Запустить от имени администратора кнопка. Если появится запрос UAC, щелкните значок да кнопка. Когда появится экран PowerShell, введите следующую команду:

Не забудьте заменить путь к приложению исходным путем к приложению, которое вы хотите запустить.

Например, если вы хотите открыть Блокнот, введите notepad.exe. Если вы хотите открыть Google Chrome на 64-битном компьютере с Windows 10, введите следующий путь:

Вся команда будет выглядеть так:

Как использовать PowerShell для создания запланированной задачи в Windows 10

Если вы хотите выполнить сценарий PowerShell, вы должны использовать -аргумент и указать сценарий. В этом случае команда будет выглядеть так:

Далее вам нужно установить время, когда вы хотите выполнить задачу. Как и планировщик заданий, вы можете выбрать любое время в соответствии с вашими требованиями. Основная команда выглядит так:

Как использовать PowerShell для создания запланированной задачи в Windows 10

В соответствии с этой командой задача будет запускаться один раз в 18:30 или 18:30 в тот же день. Можно использовать различные настройки, например -Ежедневно-Еженедельно-Ежемесячнои т.д. С другой стороны, вы можете выбрать время в 12 или 24-часовом формате. Если вы выбираете 12-часовой формат, вы должны определить AM / PM.

После этого вам необходимо зарегистрироваться для выполнения задания. Для этого введите следующую команду:

Не забудьте поменять DemoName, DemoTask, и Демо-описание в соответствии с вашими предпочтениями.

Как использовать PowerShell для создания запланированной задачи в Windows 10

После этого вы увидите следующий экран:

Как использовать PowerShell для создания запланированной задачи в Windows 10

Удаление запланированной задачи с помощью PowerShell

Чтобы использовать PowerShell для удаления запланированных задач, выполните следующие действия:

  1. Ищи Powershell в поле поиска на панели задач.
  2. Нажмите на Запустить от имени администратора.
  3. Щелкните значок да кнопка.
  4. Введите следующую команду, чтобы выбрать задачу.
  5. Введите Отменить регистрацию команда для удаления задачи.

Чтобы узнать больше об этих шагах, продолжайте читать.

Сначала откройте окно Windows PowerShell с повышенными привилегиями и введите следующую команду:

Как использовать PowerShell для создания запланированной задачи в Windows 10

Читайте также: