none
Не грузится профиль PowerSHell RRS feed

  • Вопрос

  • Добрый день.

    В профиле добавлены нужные мне оснастки, однако при выполнение вот такой команды в планировщике:

    -NoLogo -Command "&'C:\scripts\Alarm.ps1'"

    он ругается что не знает командлетов, которые как раз и относятся к тем самым оснасткам. 

    При выполнение из самого PoSh с моим профилем все работает. В чем засада?

    1 июля 2013 г. 12:01

Ответы

  • Скопировать текущий настроенный профайл в C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1 и попробовать запустить скрипт заново.

    • Помечено в качестве ответа SteFFun 2 июля 2013 г. 9:14
    1 июля 2013 г. 13:29
    Отвечающий

Все ответы

  • 1) В чьем профиле?

    2) От кого выполняется задача?

    3) Что за оснастки?

    4) Вывод ошибок

    1 июля 2013 г. 12:04
    Отвечающий
  • В профиле пользователя, из под которого я пишу скрипты и от имени которого они запускаются в планировщике. Оснастка vmvare(PowerCli) для работы с ESXi. 

    Вывод ошибок: имя такое то не распознано как командлет, бла бла бла...

    Имена эти и есть комнадлеты из этой оснастки. 

    1 июля 2013 г. 12:44
  • В профиле пользователя, из под которого я пишу скрипты и от имени которого они запускаются в планировщике. Оснастка vmvare(PowerCli) для работы с ESXi. 

    Вывод ошибок: имя такое то не распознано как командлет, бла бла бла...

    Имена эти и есть комнадлеты из этой оснастки. 

    Если в скрипт добавить строчку add-pssnapin VMware.VimAutomation.Core проблема остается? И для диагностики добавить в скрипт gc $profile , вывод есть?

    1 июля 2013 г. 12:57
    Отвечающий
  • Если добавить строчку add-pssnapin VMware.VimAutomation.Core проблема решается, но не очень удобно, я предполагал сделать профиль и в нем сразу все настроить, чтобы потом вообще не думать о всяких оснастках. А при попытке вывода gc $profile выдает ошибку, мол указан несуществующий путь к файлу профиля, хотя этот путь существует, фигня какая то.
    1 июля 2013 г. 13:26
  • Скопировать текущий настроенный профайл в C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1 и попробовать запустить скрипт заново.

    • Помечено в качестве ответа SteFFun 2 июля 2013 г. 9:14
    1 июля 2013 г. 13:29
    Отвечающий
  • Да, помогло. А теперь можно немного теории, почему так? Ведь у команды powershell есть даже параметр -NoProfile, которые не загружает профиль текущего пользователя при выполнение скриптов.
  • Теория: Get-Help about_Profiles
    Отвечающий
  • Ок, спасибо. Теория всегда у меня хромала =)