„Inwestowanie w wiedzę, zawsze przynosi największe zyski.”
Benjamin Franklin
Jeden z ojców założycieli Stanów Zjednoczonych doskonale zdawał sobie sprawę z prawdziwej potęgi tych słów. Wszystko, co osiągnął, zawdzięczał tylko i wyłącznie ciągłej nauce i doskonaleniu swoich umiejętności. Dzięki nieustannej pracy nad sobą, poza polityką prowadził działalność publicystyczną, zajmował się filozofią, malował obrazy, był drukarzem i dokonał wielu odkryć naukowych. Przez wielu uznawany jest za prekursora samodoskonalenia się. I choć czasy się zmieniły, to jego postawa powinna być wzorem do naśladowania.
Nie zmarnuj swojej szansy
Jeżeli jesteś administratorem systemu Windows, to zakładam, że stale się kształcisz, a w codziennej pracy wykorzystujesz konsolę Windows PowerShell, znasz jej możliwości lub przynajmniej wiesz jak ją uruchomić. Jeśli tak, wpis ten z pewnością nie jest dla Ciebie i śmiało możesz zająć się czymś innym. Jeżeli nie to lepiej szybko nadrobić zaległości.
Tu masz link do szkolenia → Kurs PowerShell dla Administratora Windows
Jeśli jednak Twoja kariera administratora jest dopiero na etapie planowania, to warto w którymś momencie zarezerwować trochę czasu na naukę PowerShella. Dlaczego? Chociażby dlatego, że obecnie, szczególnie jeżeli planujesz zarządzać produktami firmy Microsoft, jest to swoisty „must have”, bez którego raczej ciężko w branży. I nie chodzi o to, że ładnie wygląda w CV czy znacznie podnosi Twoją wartość w oczach przyszłego pracodawcy. Główny powód jest bardziej egoistyczny, po prostu znacznie ułatwi Ci życie.
Jeżeli takie wyjaśnienie Cię nie przekonało, to poniżej zamieszczam listę 12 powodów, dla których warto rozważyć poświęcenie kilkudziesięciu godzin z życia na zaznajomienie się z tym narzędziem. Liczę, że znajdziesz coś dla siebie.
Zanim jednak o powodach, opowiem coś o samym PowerShellu. I choć długo mógłbym rozpisywać się na temat jego budowy czy historii. Na chwilę obecną zależy mi, abyś zapamiętał jedną rzecz. PowerShell to narzędzie powstałe z połączenia języka skryptowego .NET z konsolą systemową. Takie rozwiązanie stanowi dosyć ciekawą koncepcję, która nie tylko zapewnia olbrzymie spektrum zastosowań, ale doskonale nadaje się do zarządzania systemem, w tym do automatyzacji zadań.
Ok, tyle musi Ci wystarczyć, teraz czas na pozostałe powody:
1 Stały rozwój
Odkąd w 2009 roku wraz z debiutem systemu Windows 7 oraz Windows Server 2008 R2, PowerShell stał się integralną częścią każdego systemu Windows. Firma Microsoft jasno dała do zrozumienia, że PowerShell stanie się podstawowym narzędziem do zarządzania. Z tego też powodu wraz z pojawieniem się nowej wersji systemu Windows, konsola zwykle również poddawana jest aktualizacji.
2 Międzyplatformowość
Udostępnienie kodu PowerShella zaowocowało powstaniem pobocznej międzyplatformowej wersji PowerShell Core, która działa zarówno w systemie Windows, Linux, jak i macOS. Rozwiązanie to zebrało już całkiem spore grono zwolenników. Warto więc rozważyć naukę tej technologii, nawet gdy nie masz nic wspólnego z Windowsem.
3 Standaryzacja zarządzania
Jako integralna część programu Microsoft Common Engineering Criteria, Windows PowerShell stanowi interfejs do zarządzania większością platform serwerowych opartych na systemach rodziny Windows. Jeżeli zatem opanujesz podstawy konsoli PowerShell, z powodzeniem będziesz w stanie zarządzać innymi produktami firmy Microsoft.
4 Integralny element systemu
Konsola Windows PowerShell jest integralnym elementem systemu Windows. Zatem, aby zacząć pracę, nie ma potrzeby doinstalowywać ani konfigurować dodatkowego oprogramowania. Uruchamiasz konsolę i możesz działać.
5 Automatyzacja
PowerShell swoja popularność zdobył przede wszystkim dzięki ogromnym możliwością oraz prostocie automatyzacji. Wiele czasochłonnych i powtarzalnych zadań możemy uprosić za pomocą kilku linijek kodu. Kilka przykładów zamieściłem w bezpłatnym podręczniku.
6 Większe możliwości
Zmiana podejścia do zarządzania systemem operacyjnym Windows oraz coraz większy nacisk na umiejętność posługiwania się konsolą PowerShell, spowodował osłabienie pozycji konsol graficznych. Obecnie już nie wszystkie operacje da się przeprowadzić za pomocą graficznego GUI, co więcej większość da się zdecydowanie przyśpieszyć. I prawie w każdym przypadku PowerShell zapewnia dostęp do znacznie szerszej funkcjonalności.
7 Backend
Wiele interfejsów GUI, które Microsoft zaprojektował dla swoich produktów, to w rzeczywistości nakładki na konsolę PowerShell. Doskonałym przykładem jest konsola ADAC (Active Directory Administrative Center), która została zbudowana na bazie PowerShella. Wszystko, co „wyklikamy”, zostaje przełożone na polecenia, które dodatkowo możemy podejrzeć, korzystając z zakładki PowerShell History.
8 Egzaminy Microsoft
Microsoft od jakiegoś czasu rozszerzył swoje egzaminy o pytania z PowerShella. Jeżeli zatem planujesz certyfikować się w dowolnej śnieżce Microsoft, możesz spodziewać się kilku pytań z tego zakresu. Zwykle nie są to pytania z poziomu ekspert, nie mniej jednak nauka PowerShella na pewno nie pójdzie w las.
9 Zorientowany obiektowo
W PowerShellu zastosowano logikę obiektową. Wszystko, co wchodzi i wychodzi z konsoli, jest obiektem klasy szkieletowej platformy .NET. Każdy obiekt zawiera zestaw własności i metod. Dzięki takiemu podejściu praca z konsolą staje się bardziej efektywna.
10 Nie musisz być programistą
Chociaż PowerShell składa się z powłoki wiersza poleceń ściśle zintegrowanej z platformą programistyczną .NET Framework oraz kilkoma innymi środowiskami. A składnia poleceń jest bardzo zbliżona do języka C#. Nie musisz być zawodowym programistą, aby efektywnie pracować z konsolą PowerShell. Prawdę mówiąc, wcale nie musisz być programistą. Seria poleceń (cmdletów) jest bardzo intuicyjna, a większość pracy robi konsola.
11 Klasy .NET
Jeżeli jednak jesteś programistą i masz doświadczenie z C#, tym łatwiej będzie Ci wprowadzać klasy .NET do swojego kodu. Dzięki czemu możesz znacznie rozszerzyć funkcjonalność konsoli PowerShell, a Twoje skrypty zyskają nowe możliwości.
12 PowerShell Gallery
Galeria programu PowerShell jest centralnym repozytorium zawierającym dodatkowe zasoby opublikowane przez społeczność, które rozszerzają standardową funkcjonalność konsoli. Znajdziesz tam tysiące gotowych rozwiązań. Dlatego zawsze, zanim zaczniesz tworzyć swój kod, warto w pierwszej kolejności tam zajrzeć.
Podsumowanie
Mam nadzieję, że przekonałem Cię co do korzyści wynikających ze znajomości konsoli PowerShell, jeżeli nie, to trudno. Pamiętaj jednak, że branża IT stale ewoluuje, a konkurencja nie śpi. Jeżeli chcesz się wybić, nie możesz pozwolić sobie na przeciętność. Jeżeli Ty się nie nauczysz, inni zrobią to za Ciebie.
Pracujesz z konsolą PowerShell i chcesz podzielić się swoją opinią? Koniecznie daj znać w komentarzach. A może znasz inne zalety albo wady tej technologii?
Jeżeli natomiast podobał Ci się wpis, nie zapomnij się nim podzielić.