pondělí 21. prosince 2009

PowerShell film :) [EN]

I can't resist :) Check this out: http://www.mycitymovie.com/id/eec2cae746bdb67ba2755af688d36ee8/



It's understandable even for non-Czech people. Here is the translation of the beginning of the clip:
  • All mornings are same
  • But some are different ...

and during:

  • It's your world
  • MY CITY - already in your life.

I noticed that sometimes the text is missing during the clip. So if you think there has to be something but it's not, you can run the clip again - click Přehrát znovu at the end.

neděle 20. prosince 2009

PowerGUI – část 1.

Vzhledem k tomu, že jsem v poslední době hodně pracoval s PowerGUI, rozhodl jsem se, že těm z vás, kteří tento editor nepoužívají, jej trochu přiblížím.

PowerGUI se skládá ze dvou částí: Admin konzole (ve stylu MMC) a Script Editor. Dnes se podíváme na konzoli, v příštím díle na editor a v závěrečném díle si ukážeme, jak vytvořit vlastní PowerPack.

PowerGUI je volně dostupný nástroj of firmy Quest Software. S touto firmou jsem se potkal již několikrát a i když nepoužívám žádný z jejich komerčních nástrojů, hojně využívám jejich volně dostupných nástrojů. Alespoň pro pořádek musím zmínit vynikající Active Roles Management Shell for Active Directory – do příchodu Windows 2008 Serveru víceméně jediné PowerShell cmdlety pro správu Active Directory (ani nespočítám kolik mi ušetřily času a nervů) a dále např. online konferenci Quest Connect. Z hlediska PowerShellu je zajímavé, že ve firmě Quest pracují i Dmitry Sotnikov a Kirk Munro – oba PowerShell MVP.

Dost bylo chvály. PowerGUI si můžete stáhnout ze stránek PowerGUI.org. Jelikož je PowerGUI grafická nadstavba nad PowerShellem, musíte mít PowerShell nainstalovám (nepředpokládám, že návštěvníci těchto stránek jej nemají). Po instalaci a spuštění se vám objeví podobný obrázek.

powergui

Pod menu a toolbarem je okno rozdělěno na tři části: Navigation Tree, Results/PowerShell Scripts a Actions. V závislosti na vašem vlastním nastavení se toto rozložení může měnit. Vzhled je hodně podoný MMC konzoli ve verzi 3.

V Navigation Tree jsou vidět dostupné instalované PowerPacky (viz dále). Při instalaci si můžete zvolit, které chcete používat. Každý PowerPack obsahuje vnořené nody, kterým jsou přiřazeny určité akce. Například ve větvi Local jsou dostupné akce, které můžete provádět na lokálním PC. Od správy procesů, služeb, sdílených složek přes procházení – a práci se – souborovým systémem, registry, až po brouzdání v WMI. Existují tři základní typy nódů:

  • Adresář – slouží k přehlednějšímu řazení ostatních typů nódů
  • Základní nód – Lze jej použít pro práci s cmdlety dostupnými v aktuální session PowerGUI
  • Script nód – Nejflexibilnější ze všech nódů. Může obsahovat jakýkoli skript, který vrací nějaký objekt. Tento objekt (objekty) pak zobrazí v konzoli. Script nód může být ještě jednoho speciálního typu, takzvaný dynamic. Tento nód je generovaný automaticky za běhu programu. Registry a Drive jsou například oba dynamické.

Pojďme si nyní ukázat trochu praktickou ukázku práce s PowerGUI. Chtěli bychom získat seznam služeb, které jsou právě zastavené a pokud se nám to u některé nelíbí, spustíme ji.

  1. Otevřete konzoli PowerGUI a klikněte na nód Local System a poté Services.
  2. Zobrazí se seznam procesů stejný, jaký byste viděli při otevření snap-inu Services ve Windows. Všimněte si, že panel s akcemi vpravo se změnil (stejně jako v MMC) a jsou dostupné metody, které můžete aplikovat na služby.
  3. Klikněte na položku Filters nad seznamem služeb a definujte si vlastní pravidlo. V našem případě to bude:
    filter
  4. Všechny zastavené služby se objeví ve spodním panelu.
  5. Vyberte službu, kterou chcete spustit a na pravé straně v Action panelu vyberte položku Start a služba bude spuštěna. Zároveń se aktualizuje pohled a vámi vybraná služba zmizí ze seznamu. Najdete ji buď změnou filteru nebo jeho úplným vypnutím pomocí tlačítka Clear All.

PowerPacky

Před chvílí jsem zmiňoval, že existují jakési PowerPacky. Pokud se vrátím k analogii s MMC, tak PowerPack je v PowerGUI to samé jako snap-in v MMC. Jedná se tedy o jakési “rozšíření” pomocí kterého můžete ovládat určité části systému (nebo systémy jako celek).

V průběhu instalace jste si určitě všimli, že můžete přidat např. PowerPack pro práci s Active Directory. Tento PowerPack využívá dříve zmiňovaný Management Shell for AD a cmdlety v něm obsažené jsou PowerPackem spouštěny. Na stránkách PowerGUI jsou dostupné PowerPacky od různých autorů a pokud se vám idea PowerGUI zalíbí, možná na těchto stránkách najdete zrovna ten, který se hodí pro vaši práci. Pokud žádný takový nenajdete, můžete si vytvořit vlastní a poté ho třeba nahrát na web, aby i ostatní mohli těžit z plodů vaší práce. O tvorbě PowerPacku si povíme ve třetí částí této minisérie.

Proč PowerGUI

V konzoli vidím obrovskou výhodu – na jednom místě máte dostupné “všechny” nástroje, které potřebujete. Chcete se podívat, jak vám běží Exchange, IIS nebo třeba VMware server. Nemusíte se přepínat mezi různými konzolemi a potřebné informace máte po ruce. Další výhodou je, že můžete před některými uživateli skrýt určitou funkčnost a tak třeba vaši lidé na helpdesku budou mít možnost pouze na odemykání účtů a nikoli jejich mazání.

Nevýhodou může být považována například rychlost (někdy spíše pomalost) konzole. Musíte myslet na to, že na pozadí běží nějaký příkaz PowerShellu a ten nemusí být vždy nejrychlejší variantou získávání informací. Na druhou stranu – ve svém SMS PowerPacku používám ve většině případů přístup do WMI přes síť a rychlost pro mne není limitujícím faktorem většiny operací.

úterý 1. prosince 2009

PowerPack Challenge 2009

Dnes ráno byly vyhlášeny výsledky letošního ročníku PowerPack Challenge, pořádaného firmou Quest Software.

Letošním vítězem se stal Alan Renouf s jeho Virtu-Al.Net VMware Virtual Infrastructure / vSphere scripts PowerPackem.

Já jsem se svým SMS 2003 PowerPackem dostal hodnocení Honorable Mention a stal se tak šťastným majitelem dárkového certifikátu na Amazon.com.

Po dlouhé odmlce způsobené i tím, že jsem po nocích programoval můj PowerPack se tedy vrátím k častějšímu přispívání na tyto stránky.

sobota 26. září 2009

Přístup na webové stránky

Občas se mi hodí, když mohu pomocí PowerShellu přistoupit na nějakou webovou stránku a stáhnout si ji na disk. Až donedávna jsem používal skript, který jsem vždy měnil podle toho, kde jsem právě byl. V práci jsem vypisoval proxy server a doma jsem jej ze skriptu mazal. Jelikož tento přístup není rozhodně ideální, hledal jsem cestu, jak toto obejít. Jako vždy mi pomohlo MSDN.

Prvním krokem je vytvořit nový objekt založený na třídě WebClient. Poté je potřeba tomuto objektu přiřadit aktuální proxy server (založený na třídě WebProxy). Podrobné informace jsou v komentářích v následujícím kódu.
  1. # nastavit stranku, kterou chceme stahnout
  2. $url = "http://www.powershell.cz"
  3. # vytvorit objekt WebClient
  4. $wc = New-Object System.Net.WebClient
  5. # nastavit defaultni proxy
  6. $proxy = [System.Net.WebProxy]::GetDefaultProxy()
  7. # a pouzit aktualni prihlasovaci udaje
  8. $proxy.UseDefaultCredentials = $true
  9. # pote priradit proxy k objektu WebClient
  10. $wc.proxy = $proxy
  11. # pote stahnout pozadovanou stranku jako text
  12. $wc.DownloadString($url)
Pokud nechcete výpis kódu stránky do konzole, můžete místo metody DownloadString použít DownloadFile.

úterý 15. září 2009

2. díl série o PowerShellu v TechNet Flash zpravodaji

Včera vyšel další díl TechNet Flash zpravodaje. Obsahuje mimojiné druhý díl série o Windows PowerShellu, tentokrát na téma Objekty a roury. Článek je možné nalézt na TechNetu.

Pokud ještě TechNet Flash neodebíráte, můžete to napravit.

čtvrtek 10. září 2009

PowerShell v2 pro Win XP a W2K3

A je to tady! PowerShell v2 pro Win XP a 2003 Server (obě verze zatím jako RC) je zde. Stahovat lze z MS Connect.

Huráááá :)

středa 9. září 2009

Anketa: Novinky v PowerShellu

Mám pro vás další anketu. Loni jsem začal s týdenním publikováním novinek v PowerShellu. Ke konci roku jsem s tím přestal, ale vzhledem k tomu, že v současné době začínám pracovat na nové verzi stránek, měl bych dotaz.

Vyhovovalo by vám více okamžité publikování zajímavostí (ve stylu posledních videí) nebo byste radši uvítali týdenní souhrn (ve stylu předchozích Get-PSNews)?

V případě okamžitých novinek bych zřejmě nepublikoval vše, co bych jinak uvedl do týdenního přehledu. Samozřejmě opravdu horké novinky (např. nyní očekávané RC v2 pro XP a 2003 Server) bych publikoval okamžitě.

Dejte mi vědět váš názor. Ať již vyplněním ankety, komentářem pod tímto příspěvkem nebo přes Twitter (@makovec).