Новое Распределяем каналы MAX по категориям и территориям. Читать новость

👋 Привет, админы!



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

🧩 Суть:
Есть скрипт .ps1, который делает бэкап и отправляет отчёт по почте. Запускаешь вручную — всё отлично. Но через Task Scheduler - тишина, никакой ошибки, ничего не происходит.

🔍 Что помогло выяснить причину:

1. В Action указывал не сам скрипт, а запуск powershell.exe с аргументами:


-ExecutionPolicy Bypass -File "C:\Scripts\Backup.ps1"

2. Обязательно указал "Start in" (рабочую папку), иначе относительные пути внутри скрипта не работали.

3. Заменил powershell.exe на powershell.exe -NoProfile, чтобы избежать подвисаний из-за пользовательского профиля.

4. В General поставил галочку "Run with highest privileges" - без этого не было доступа к сетевым путям и не выполнялись некоторые команды.

💡В итоге: Task Scheduler штука капризная, особенно с PowerShell. Поэтому всегда логируйте выход скрипта в файл, добавляйте Start-Transcript и Stop-Transcript, и не забывайте про -NoProfile.

📌 Полный пример команды в задаче:

Program/script: powershell.exe
Add arguments: -NoProfile -ExecutionPolicy Bypass -File "C:\Scripts\Backup.ps1"
Start in: C:\Scripts


👉 @channel_win_sysadmin
Просмотры: 242
Открыть в MAX Сообщить о неточности

Сообщить о неточности

Опишите, что нужно исправить. Если есть источник, добавьте ссылку.

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти