Как заставить PowerGUI Script Editor работать с PowerShell 3.0

С недавних пор начал использовать Windows PowerShell. Но буквально через час работы со скриптами встал вопрос об удобной IDE, в которой есть подсветка синтаксиса и отладка. Штатный PowerShell ISE из 3-й версии, в общем-то, годится для простых задач (основное там есть), но визуально он не очень, с ним ощущаешь какой-то дискомфорт.

Я стал искать альтернативы и довольно быстро нашлась хорошая бесплатная ISE — PowerGUI Script Editor, в которой есть:

  1. IntelliSense — и в области редактора скриптов, и в области консоли, при этом не только дополняется имя, но и сразу же отображается краткая информация по командлету;
  2. Пошаговая отладка и просмотр переменных;
  3. Интерфейс — весьма похож на Visual Studio 2008, и что важно — такие же горячие клавиши в отладке и при редактировании.
  4. Есть готовые сниппеты кода, поддерживаются плагины.

Но PowerGUI почему-то использовал PowerShell 2, а не 3, что не позволяло мне использовать новые возможности, например, в часто используемом Get-ChildItems нет ключа –Attributes (и это то, что выяснилось сразу).

Как оказалось, всё решается просто — с помощью дополнительного ключа командной строки -version 3.0, т.е. надо изменить команду в ярлыке на такую:

"C:\Program Files (x86)\PowerGUI\ScriptEditor_x86.exe" -version 3.0

После чего PowerGUI начинает использовать PowerShell 3.0 (это можно проверить, просмотрев $PSVersionTable).

Кстати, для Visual Studio 2010 есть расширение PowerGUI VSX, благодаря которому можно удобно редактировать PowerShell скрипты  прямо в Visual Studio, но я его не ставил.

Если интересно, зачем мне PowerShell, то объясню:

  1. Мне понадобился «повседневный» скриптовый язык, чтобы автоматизировать рутинные задачи с минимальными затратами сил (CMD/BAT-скрипты имеют совсем уж базовые возможности, а каждый раз писать программу — долго).
  2. В PowerShell есть всё лучшее, что есть в Unix shell и Perl, но сделано даже лучше, т.к. везде используются объекты, в т.ч. через конвейеры передаются объекты, а не текст.
  3. Из скриптов PowerShell доступна вся мощь .Net BCL, в т.ч. можно создавать оконные (!) приложения (WinForms доступны «из коробки», WPF — после установки модуля).
  4. Легко взаимодействовать с COM (например, с Excel)
  5. PowerShell идёт в комплекте с Windows 7 (версия 2.0).
Если вас интересует получение или продление ВНЖ в Словакии — читайте подробнее об условиях и ценах на сайте parus.sk нашей семейной компании Parus Solutions, которая успешно занимается этим с 2015 года.