Использование PowerShell для управления запланированными задачами в Windows

Попробуйте наш инструмент устранения неполадок

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

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

Хотя можно открыть планировщик заданий с помощью поиска, он не предоставляет вам чистый интерфейс для быстрого просмотра списка задач.

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

PowerShell для Windows предлагает еще один быстрый вариант для Windows 8 и более поздних версий. Команда Get-ScheduledTask возвращает все или некоторые запланированные задачи локального компьютера.

  1. Откройте окно командной строки. Вы можете сделать это, нажав клавишу Windows, набрав Powershell.exe, щелкнув правой кнопкой мыши результат, выбрав «Запуск от имени администратора» и нажав Enter. Обратите внимание, что команда get-scheduletask не требует повышения прав, в отличие от всех команд управления.
  2. Тип Get-ScheduledTask

display scheduled tasks

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

Имя помогает идентифицировать задачу, а состояние указывает, включена она или отключена.

Однако, что делает его более мощным, так это параметры, которые вы можете добавить в команду для отображения дополнительных сведений или фильтрации задач.

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

  • Get-ScheduledTask -TaskName Google * возвращает все задачи, которые начинаются с Google.
  • Get-ScheduledTask -TaskPath возвращает все задачи, помещенные в корень TaskPath.

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

Команды Disable-ScheduledTask и Enable-рассылка по расписанию задачи были созданы для этого. Как следует из названий, первая отключает выбранные вами задачи, а вторая включает их.

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

disable scheduledtasks

Команды, которые могут оказаться полезными:

  • Disable-ScheduledTask -taskname 'Adobe Flash Player Updater' отключает задачу Adobe Flash Player Updater.
  • Enable-ScheduledTask -taskname 'Adobe Flash Player Updater' включает задачу Adobe Flash Player Updater.
  • Get-ScheduledTask -taskname Google * | Disable-ScheduledTask отключает все задачи, возвращаемые командой get (начиная с Google),

Другие интересующие команды, связанные с задачами: старт-scheduledtask , стоп-scheduledtask и незарегистрированный-scheduledtask ,