Запуск PowerShell в планировщике заданий

Я использую PowerShell для загрузки данных из электронной почты.

Я хочу запустить этот процесс с помощью PowerShell. Когда я запускаю скрипт следующим образом:

D:\script.ps1 

в powershell.exe работает нормально.

Когда я планирую его в Task Scheduler, ничего не происходит.

Я попробовал установить его как программу / скрипт:

 powershell Powershell.exe powershell.exe 

Добавить аргументы:

 -executionpolicy bypass -file D:\script.ps1 -file D:\script.ps1 -file "D:\script.ps1" 

И ничего не работает. Я использую Windows 2008 R2.

Устранение проблем с запланированными задачами – это боль в тылу, потому что вы не можете действительно понять, что происходит. Это некоторые вещи, которые вы можете проверить:

  • Убедитесь, что ваша powershell.exe -File "D:\script.ps1" работает в принципе, например, запустив ее из CMD (в вашем случае попробуйте запустить powershell.exe -File "D:\script.ps1" ). Если это дает вам какие-либо ошибки, вам необходимо исправить их в первую очередь.

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

  • Проверьте, действительно ли ваша задача завершена или процесс все еще запущен (через Process Explorer , Get-Process , Task Manager, …).

  • Проверьте результат последнего запуска для кода выхода команды.

  • Включите историю запланированных задач ( Действие → Включить все истории задач ). Это даст вам хотя бы некоторую информацию о том, что делает задача, независимо от того, начинается она вообще, и если / какие ошибки произошли. Для включения истории задач вам необходимы права администратора.

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

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

     Write-EventLog -LogName Application -Source EventSystem -EventID 100 -EntryType Information -Message 'Your log message.' 

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

     New-EventLog -Source MyEventSource -LogName Application 

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

Я нашел этот сайт весьма полезным: http://www.microsoftpro.nl/2011/07/07/how-to-schedule-a-powershell-script-using-scheduled-tasks-in-windows-server-2008 -r2 /

Я также изменил свойство Secure option, и это помогло.

Я не проверял: не храните пароль, и теперь он запускается без моего входа в сеть.

мир

Несколько важных замечаний, с которыми я столкнулся:

  1. Вместо предоставления только powershell.exe попробуйте дать полный путь PS C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe .

  2. Разрешение – еще одна проблема. Пользователь, с помощью которого вы запускаете задачу, может не иметь разрешения на ее выполнение.

  3. Политика выполнения. Убедитесь, что вы обходите политику выполнения с помощью -ExecutionPolicy Bypass .

  4. Убедитесь, что вы выполняете задание с наивысшими привилегиями .

  5. Наконец, путем анализа журналов.

  • PowerShell говорит, что «выполнение скриптов отключено в этой системе».
  • Открыть конкретное приложение при входе пользователя в окна
  • Преодоление ограничения 1024 символов с помощью setx
  • ASP.net Получение ошибки «Доступ к пути запрещен» при попытке загрузить файлы на мой веб-сервер Windows Server 2008 R2
  • Запланированная задача не выполняется по плану
  • Добавить драйверы сетевого принтера в Windows 7 / Server 2008 R2?
  • Могу ли я управлять своим собственным доменом, используя веб-сервер дома без статического IP-адреса с использованием NO-IP?
  • Извлечение макета клавиатуры QWERTY
  • Как запустить приложение Play Framework 2.0 в качестве службы Windows?
  • Как включить RDP для сервера 2008 R2 в другой сети? Сеть VM
  • Как я могу остановить удаленный компьютер от изменения раскладки клавиатуры?
  • Давайте будем гением компьютера.