PowerShell a Visual Studio

Autor: David Moravec

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.

Klepněte pro větší obrázek
Klepněte pro větší obrázek
Klepněte pro větší obrázek 
Na 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 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.

Po nainstalování VS je potřeba doinstalovat PowerShell Tools (PST). Jejich domovskou stránku najdete zde. 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.

Klepněte pro větší obrázek

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.

Klepněte pro větší obrázek

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ů.

Klepněte pro větší obrázek 
Jak vidíte, VS rovnou zobrazí s dostupné Parameter Sety. Samozřejmostí je i automatické doplňování jmen parametrů.
Klepněte pro větší obrázek

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.

Klepněte pro větší obrázek

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).

Klepněte pro větší obrázek 
K jednotlivým cmdletům si můžete zobrazit i nápovědu pro vytvoření správné syntaxe.
Klepněte pro větší obrázek

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.

Klepněte pro větší obrázek
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.

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ářů.

Články ze série Microsoft TechNet nevytváří redakce Živě.cz, ale partneři programu Microsoft TechNet. Jsou publikovány v rámci mediálního partnerství Živě.cz a společnosti Microsoft.

Diskuze (3) Další článek: Je odkaz zločin? Uvidíme! Piráti jsou trestně stíháni za provoz webu Sledujuserialy.cz

Témata článku: Microsoft, Visual Studio, MVP, Jednoduchá možnost, Základní vlastnost, Tools, Commando, Adama, PoW, Quest, Interní editor, Ostatní editor, Nejdůležitější možnost, Automatické doplňování, Stejná chyba, Ctrl + Shift, Visual, Session, Syntax, Robustní řešení, Command, PowerShell, Adam, Stud


Určitě si přečtěte

Osudová havárie Concordu: Před 18 lety přišel konec nadzvukových dopravních letadel

Osudová havárie Concordu: Před 18 lety přišel konec nadzvukových dopravních letadel

** Concorde byl nejrychlejším dopravním letadlem ** Atlantik dokázal přeletět za cca 3 až 3,5 hodiny ** Před osmnácti lety tragická havárie provoz těchto letadel prakticky ukončila

David Polesný, Jiří Černý | 39

Živě z Pekingu: Otestovali jsme Velký čínský firewall a hledali dalajlámu

Živě z Pekingu: Otestovali jsme Velký čínský firewall a hledali dalajlámu

** O Velkém čínském firewallu toho byly napsány už stohy ** Vyzkoušíte jej ale až na místě ** A tak jsme vyrazili do Pekingu a začali hledat dalajlámu

Jakub Čížek, Antonín Trčálek | 60

Jeff Bezos: Amazon zbankrotuje. Jednou

Jeff Bezos: Amazon zbankrotuje. Jednou

** Šéf Amazonu varoval zaměstnance, že ani Amazon nebude existovat navždy ** Nastínil jasné mechanismy, jak udržet Amazon na trhu co nejdéle ** Co může Amazon v budoucnu ohrozit?

Karel Javůrek | 32

Zbavujeme se Googlu: vybíráme nejlepší alternativy, které nahradí jeho služby

Zbavujeme se Googlu: vybíráme nejlepší alternativy, které nahradí jeho služby

** Google nabízí spoustu služeb, ale většina z nich má i dobré alternativy ** Pokud z nějakého důvodu nechcete používat služby Googlu, nemusíte ** Připravili jsme přehled služeb, kterými lze ty od Googlu nahradit

Karel Javůrek, David Polesný | 89

Modelářský zázrak: Maketa raketoplánu Columbia, která létá jako skutečná raketa

Modelářský zázrak: Maketa raketoplánu Columbia, která létá jako skutečná raketa

** Model raketoplánu Columbia od českého konstruktéra umí i létat ** Obdivuhodný model si vzal 1600 hodin práce ** Podívejte se na fotografie ze stavby a prvního letu

Karel Jeřábek | 20



Aktuální číslo časopisu Computer

Nejlepší programy pro úpravu fotek zdarma

Externí disky pro zálohu dat

Velký test: herní notebooky

Srovnání 12 batohů