PowerShell a Visual Studio


Pokud píšete skripty v PowerShellu, zřejmě máte oblíbený editor. Je sice pravdu, že byste mohli psát skript v Notepadu, ale zatím jsem nepotkal masochistu, který by to vydržel déle než pár minut. Editory nám zjednodušují práci s našimi oblíbenými programovacími jazyky.

Samozřejmě se nebavíme o úrovni, kterou potřebují programátoři pro jejich každodenní práci. Pro standardního IT administrátora je dostačující editor na úrovni vestavěného ISE. Jednou z nejdůležitějších možností jakéhokoli editoru (budu dále používat obecnou zkratku IDE – Integrated Development Environment) je označování syntaxe, její barevné odlišení a tím pádem jednoduchá možnost vidět na první pohled možné chyby. V některých případech i s popisem dané chyby.

clip_image001 clip_image003 clip_image004

Windows PowerShell Integrated Scripting Environment (ISE)

Visual Studio s free doplňkem PwerShell Tools for Visual Studio Visual Studio Code s podporou PowerShellu

Na předchozích obrázcích je vidět stejná chyba v různých editorech: ISE, Visual Studio a Visual Studio Code.
Dnes si povíme něco o tvorbě skriptů ve Visual Studiu.

V rámci IT Pro komunity se s Visual Studiem (VS) nepotkáme tak často. Je to tím, že se jedná opravdu o robustní řešení, určené převážně pro programátory. Jednou ze slabin VS byla donedávna téměř žádná (smysluplná) možnost editace PowerShell souborů. Vzhledem k tomu, že Microsoft razí PowerShell jako budoucnost správy světa Windows, byla to velká škoda.

Naštěstí existuje PowerShell komunita i mezi vývojáři. Jedním z předních PowerShell MVP je i Adam Driscoll. Pokud vám toto jméno něco říká, tak vězte, že Adam byl jedním z lidí, kteří ve firmě Quest pracovali na vývoji nástroje PowerGUI. Před pár lety bylo PowerGUI asi nejznámějším a nejrozšířenějším nástrojem na tvorbu PowerShell skriptů. Bohužel, od té doby, co firmu Quest koupil Dell byl vývoj odsunut na druhou kolej a dnes se tento produkt již nevyvíjí. Poslední update byl v dubnu 2014. Adam poté začal pracovat na nadstavbě PowerShellu pro Visual Studio. Tento produkt nazval PowerShell Tools for Visual Studio. Před nedávnem získal Adam podporu Microsoftu a na jeho PowerShell Tools začali pracovat i interní vývojáři.

Dneska bych se rád podíval právě na možnosti PowerShell Tools for Visual Studio 2015.
Nejprve je potřeba zmínit jednu věc – pokud si chcete VS vyzkoušet, nemusíte se bát licenčních poplatků. Existuje totiž několik edic VS a pro vyzkoušení bych vám doporučil edici nazvanou Community (https://www.visualstudio.com/en-us/products/vs-2015-product-editions.aspx).

Po nainstalování VS je potřeba doinstalovat PowerShell Tools (PST). Jejich domovskou stránku najdete na https://visualstudiogallery.msdn.microsoft.com/c9eb3ba8-0c59-4944-9a62-6eee37294597. PST můžete doinstalovat jako Extension do VS. Jděte do menu Tools / Extensions and Updates a v části Online najděte PST. Poté můžete toto rozšíření nainstalovat. Po instalaci se PST zobrazí v Extensions.

clip_image006

Po instalaci můžeme zkusit vytvořit prázdný soubor a uložit jej s příponou PS1. Jak jsem říkal již na začátku, základní vlastností, kterou od IDE chceme, je zvýrazňování syntaxe.

clip_image008

Všimněte si v pravé části obrazovky názvu naší nové funkce. Pokud bychom měli ve skriptu funkcí více, lze se v této části přepnout a „skočit“ přímo na definice funkce.

Pokud budete psát delší kód, bude se vám hodit i automatické doplňování jmen cmdletů.

clip_image010

Jak vidíte, VS rovnou zobrazí s dostupné Parameter Sety. Samozřejmostí je i automatické doplňování jmen parametrů.

clip_image012

Velkou nevýhodou VS byla i nemožnost použít „příkazový řádek“ přímo v editoru. To nyní lze díky tzv. PowerShell Interactive Window (Ctrl + Shift + \). V tomto okně můžete nejen psát interaktivně příkazy, ale například otevřít novou vzdálenou session.

clip_image014

Pokud se vám v ISE líbí Command browser, i na tuto eventualitu je PST myšleno. Stačí otevřít PowerShell Command Explorer (View / Other Windows / PowerShell Command Explorer).

clip_image016

K jednotlivým cmdletům si můžete zobrazit i nápovědu pro vytvoření správné syntaxe.

clip_image018

Samozřejmostí je v IDE i možnost debugování. Samozřejmě je dostupné i v PST. Díky debugování skriptu ve VS máte dostupné možnosti, které jso jinak přístupné programátorům. Na rozdíl od např. ISE je ve VS dostupné okno s proměnnými, kde můžete sledovat aktuální hodnoty jednotlivých proměnných.

clip_image020

Krokování probíhá klávesami F10 a F11 jako v ostatních editorech.

Visual Studio lze využít pro vytváření složitějších skriptů (či projektů). Dalšími možnostmi, které jsem v dnešním článku nezmínil je například možnost tvorbu projektu (obsahujícího více skriptů) nebo využití testovacího frameworku Pester, který je poslední dobou na vzestupu a stává se standardem pro testování PowerShell skriptů i v rámci Microsoftu.

Praktickou videoukázku prostředí najdete zde : Visual Studio 2015 PowerShell Tools Overview.

Dnešní článek měl naťuknout možnost použití Visual Studio pro administrátory. Pro tvorbu větších projektů se VS může stát vhodnou náhradou pro běžnější ISE, které je vhodnější spíše pro jednodušší projekty. Pokud byste měli nějaké dotazy, pište je do komentářů.

David Moravec, MVP

 

Comments (0)

Skip to main content