pondělí 29. září 2008

PowerScripting Podcast review

[Update 5.10. 17:15]
Právě mi přišel mail od Hala Rottenberga. Stal jsem se jedním z vítězů :) Již jsem si vybral knihu - Windows PowerShell™ v1.0: TFM® 2nd Edition. Přemýšlel jsem také o Managing Active Directory with Windows PowerShell: TFM®, ale tu si koupím časem do práce.

[Česky]
V jednom z předchozích PowerScripting podcastů byla uveřejněna "soutěž" o dvě knihy od SAPIEN Press. Podmínkou je napsání recenze na podcasty. Máte šanci do 2.října. Podrobněji na http://powerscripting.wordpress.com/

[English - PowerScripting Podcast Review]
I started to listen PowerScripting Podcasts few weeks ago. I found it during my "Hunt for PS sources". So immediately I created the script and download all previous PS podcasts to my computer - now it's more than 36 hours of PS talking.

This podcast has some advantages for PowerShellers:
  • Overview of latest cool PowerShell scripts, some of them you can't miss - here you have it at one place.
  • Jonathan & Hal are well known IT guys and they knows the things they are talking about - small plus for podcasts.
  • It's not just talking about PowerShell - it's talking about PS and all the world around, including VM, AD and other technologies.
  • What I really like is an interview with interesting people. I can learn a lot from them - guys like Jeffrey Snover, Jeff Hicks, Greg Shields and others can teach me a lot. At least to hear their thinking is very useful.
  • The good thing is also when I hear that those big guys are doing things the same way as me (better - I am doing it like they) - Then I know that the way of scripting is not an impasse.
  • Last but not least - for me is very good to listen English and I now am using "cool" more in my daily life :) Of course it's because PowerShell IS cool.
As an conclusion: Listen-Podcast(PowerScripting Podcast)


čtvrtek 25. září 2008

PowerShellPlus Professional Edition konečně dostupný

Editor, o kterém jsem zde již psal, je nyní dostupný v ostré verzi. Cena je $145, ale do konce září můžete využít zaváděcí cenu $79. Nabídka je to velice lákavá a jelikož v současné době testuji i další dva známé PowerShell editory (Admin Script Editor, Primal Script) mohu zatím prohlásit, že PSPlus se mi líbí nejvíce. Samozřejmě je to pouze věc osobního názoru.

PowerShellPlus Professional Edition včetně krátké "screenshot tour" najdete na stránkách Idera.

TAOCP v češtině

Trošku mimo PowerShell, ale nedá mi to zde nezmínit. V češtině vychází legendární (nebál bych se toho slova) kniha The Art of Computer Programming (do češtiny přeložena jako Umění programování). Přesněji řečeno, vychází první díl nazvaný Základní algoritmy (v originále Fundamental Algorithms). Knihu vydává CPress a její cena na stránkách vydavatelství je 990 Kč.

Donald E. Knuth je známý mimojiné i skvělými programy TeX a METAFONT.

Odkazy na Wikipedii:

neděle 21. září 2008

PowerShell prezentace v Second Life

Před chvílí publikoval Marco Shaw v diskusní skupině microsoft.public.windows.powershell odkaz na blog Blaina Bartona.

V Second Life bude probíhat třídílná série přednášek o Powershellu. Každý z dílů série je plánován na přibližně 90 minut. První (PowerShell Basic's) se bude konat 27. září.

Více se můžete dozvědět v Blainově blogu.

pátek 19. září 2008

PowerShellPlus Professional Edition zdarma

Pokud sháníte editor pro PowerShell, možná se vám bude líbit nabídka firmy Idera. Pro posluchače PowerScripting Podcast-ů je připravena možnost získat PowerShellPlus Professional Edition zdarma. Nechci sem dávat přímý link, ale pokud půjdete na stránky PowerScripting Podcast, tak v epizodách 40 a 41 najdete popis, jak se k editoru zdarma dostat. Podle popisu to vypadá, že dostupných bude pouze několik licencí, tak neváhejte a spěchejte.

čtvrtek 18. září 2008

Recenze: PowerShell - Podrobný průvodce skriptováním

Prozatím jediná kniha o PowerShellu v češtině pochází z pera jednoho z největších propagátorů administrace Windows přes příkazovou řádku - Patrika Maliny. Patrik Malina je lektorem v počítačové škole Gopas, kde má na starost mimojiné kurzy skriptování (VBS, WMI) a PowerShellu.

Kniha je rozdělena do šesti kapitol a je doslova nacpaná informacemi. Zabývá se jak teoretickými informacemi (historie), základní prvky jazyka (cmdlets, konstrukce, ...), tak i praktickými administrátorskými úlohami.

Kapitola 1, Přehled možností skriptování ve Windows popisuje vývoj příkazového řádku ve Windows od MS-DOSu až do současnosti a ukazuje i možnosti skriptování na této platformě (např. WSH). Informuje čtenáře o rozhraní ADSI a rozhraní pro WMI. Na konci kapitoly je uvedena krátce historie PowerShellu a zmíněny dva další často používané nástroje: příkaz wmic a LogParser - oběma se autor věnuje podrobně dále v knize.

Kapitola 2, Základy prostředí PowerShell tvoří spolu s kapitolou tři nosnou část knihy. V této jsou popisovány příkazy, bez kterých se při další práci v PowerShellu prostě neobejdete. Autor začíná nastavením prostředí, spuštěním prvních příkazů a hned přechází k tématu cmdlets, čili příkazů PowerShellu. Jedním z hodně užitečných - a často opomíjených - je i Get-Help. Po tomto rozjezdu následuje kapitola o rouře, která je jedním ze základních použitých principů. Autor se zmiňuje i o příkazu ForEach-Object, který základem pro zpracování dat tekoucích rourou. Dále je v kapitole zmíněn vstup a výstup dat, jak v prostředí příkazové řádky, tak například při práci se soubory (např. CSV, XML). V poslední části je zmíněna práce s objekty, což je pro PowerShell jedna ze základních vlastností.

Kapitola 3, Jazyk PowerShell se začíná blížit skriptování ve VBS. Na začátku jsou vysvětleny konstrukce - podmínky, větvení (if, while, for, ...) a vytváření funkcí. K zajímavým částem patří možnosti ladění a tzv. error handling. Po této "programátorské" části se již dostává na řadu práce se souborovým systémem a registry. Autor se poté vrací opět k "programování", další kapitola se věnuje využití .NET v PowerShellu, což je téma, se kterým se v praxi setkáte určitě velmi často. Následuje popis práce s Active Directory a s WMI. Krátce je také zmíněn mechanismus regulárních výrazů. Kapitola je ukončena popisem možností práce s COM. Pokud perfektně zvládnete témata této kapitoly, jste na dobré cestě.

Kapitola 4, PowerShell v akci ukazuje praktické administrátorské postupy a jejich řešení v PowerShellu. Jedná se hlavně o práci s logy, službami, procesy a Active Directory. Okrajově je zmíněna například administrace MS Exchange 2007.

Kapitola 5, Jiné možnosti administrace skripty popisuje dva nástroje zmiňované v úvodu knihy: příkaz wmic a LogParser (který je popsán opravdu velice dobře).

Kapitola 6, Referenční příručka PowerShellu je již pouze jakýmsi "shrnutím" celé knihy a popisuje pohromadě některé cmdlets.

Hodnocení

Vzhledem k velikosti trhu je jistě záslužným činem, že se někdo do takovéto práce pustil. Nutno ovšem říct, že pan Malina má přehled a určitě ví jaký je u nás o PowerShell zájem (byl mimojiné přednášejím na Gopas TechEd nebo setkání WUG). Kladně hodnotím množství informací v knize obsažených - pozorný čtenář si odnese opravdu velké množství informací. Co mě na knize naopak zklamalo je rejstřík - v porovnání s anglickými knihami, které mám ve své knihovně, je žalostný. Proto mám v knize množství záložek a na vnitřích deskách plno svých poznámek a odkazů dovnitř knihy.

Pro první seznámení s PowerShellem mohu knihu jen doporučit. Pokud se budete ovšem chtít dostat hlouběji, bez anglické literatury se stejně neobejdete. Knize bych dal známku dva.

pondělí 15. září 2008

Get-Help

Naši pouť po cmdletech začneme u jednoho z nejpoužívanějších (doufejme :) - Get-Help. Každý z nás byl někdy více či méně nespokojen z jakoukoli Microsoftí nápovědou (když pomineme lidi, kteří nápovědu nečtou, což je asi většina). V PowerShellu je ovšem Get-Help na velice dobré úrovni a doporučujeme jej používat. Základní variantou je čistě uvedení cmdletu bez parametrů:

Get-Help

Tento příkaz vypíše základní informace, ze kterých můžeme dále vycházet. Zobrazíme je všechny a ukážeme si na nich práci s nápovědou v PowerShellu (barevně jsme odlišili jednotlivé sekce - o nich si více povíme za chvíli).

TOPIC
    Get-Help

SHORT DESCRIPTION
    Displays help about PowerShell cmdlets and concepts.

LONG DESCRIPTION

SYNTAX
    get-help {<CmdletName> | <TopicName>}
    help {<CmdletName> | <TopicName>}
    <CmdletName> -?

    "Get-help" and "-?" display help on one page.
    "Help" displays help on multiple pages.

    Examples:
      get-help get-process : Displays help about the get-process cmdlet.
      get-help about-signing : Displays help about the signing concept.
      help where-object : Displays help about the where-object cmdlet.
      help about_foreach : Displays help about foreach loops in PowerShell.
      match-string -? : Displays help about the match-string cmdlet.

    You can use wildcard characters in the help commands (not with -?).
    If multiple help topics match, PowerShell displays a list of matching
    topics. If only one help topic matches, PowerShell displays the topic.

    Examples:
      get-help * : Displays all help topics.
      get-help get-* : Displays topics that begin with get-.
      help *object* : Displays topics with "object" in the name.
      get-help about* : Displays all conceptual topics.

    For information about wildcards, type:
      get-help about_wildcard

REMARKS
    To learn about PowerShell, read the following help topics:
      get-command : Displays a list of cmdlets.
      about_object : Explains the use of objects in PowerShell.
      get-member : Displays the properties of an object.

    Conceptual help files are named "about_<topic>", such as:
      about_regular_expression.

    The help commands also display the aliases on the system.
    For information about aliases, type:

      get-help about_alias

Každý help v PowerShellu je rozdělen do sekcí, které jsou volány v závislosti na parametrech cmdletu Get-Help (-detailed, -full). Názvy sekcí jsou následující:

  • Name - jméno cmdletu
  • Synopsis - krátký popis cmdletu
  • Syntax - popis syntaxe
  • Detailed Description - podbobnější popis funkce cmdletu
  • Parameters - popis použítí všech parametrů
  • Input Type - typ objektů, které cmdlet očekává na vstupu
  • Return Type - typ výstupu
  • Examples - příklady použití cmdletu
  • Related Links - jména podobných cmdletů
  • Remarks - informace o použití parametrů

Při volání Get-Help -full nám Get-Help vrátí všechny výše popsané sekce. Pro vypsání všech informací o cmdletu Get-WmiObject, tedy zapíšeme


Get-Help Get-WmiObject -full

Další zajímavou části nápovědy v PowerShellu je tématická nápověda. Poznáte ji podle toho, že její jméno začíná slovem about. Například Get-Help about_regular_expression vyvolá nápovědu o používání regulárních výrazů.

Domácí úkol: Projděte si všechny příklady v Get-Help a zapamatujte si je pro další použití :)