Programowanie .NET

Archive for the category “PowerShell”

PowerShell ISE

Dziś zaprezentuję domyślny graficzny edytor do pisania skryptów PowerShell jaki dostajemy z automatu. Z góry muszę przyznać że nie ma w nim super wodotrysków wręcz przeciwnie jest on raczej ubogi w ilość funkcji.

PowerShell Integrated Scripting Environment (dalej nazywane ISE) został napisany w WPF z wykorzystaniem systemu plaginowego. Środowisko jest dobra dla osób zaczynających się uczyć PowerShell a które powinny się skupić na tym co piszą i tez IDE skryptowe nie wykonywało operacji za nich. Jednak dla doświadczonej osoby ten edytor jest to stanowczo za mało.

image

Istnieją zewnętrze edytory firm trzecich jednak kosztują one sporą kwotę ale zapewniają sporo funkcji. W niektórych edytora ilość funkcji może przytłaczać. Jednak jest to temat na inny odcinek. Wróćmy do tematu Uśmiech. Narzędzie można podzielić na 4 części:

  • Pasek narzędzi i poleceń.
  • Widok skryptów
  • Konsolę PS
  • Plugins

ide

Okno PowerShell ISE jest możliwe do konfigurowania w 3 płaszczyznach. Może być widoczna sama część gdzie pisze się skrypty lub konsola PS i zakładki skryptów ustawione pionowo obok siebie lub poziomo zakładki skryptów a potem konsola. Okno Command może natomiast być zadokowane po prawej stronie lub wolno pływające. O tym elemencie więcej opisałem w dalszej części.

Konsola
Konsola w PowerShell ISE jest w 100% pełnoprawną konsolą PS. Na pasku zadań są dwa przyciski które uruchamiają nowe sesje PS w oddzielnych konsolach.image

Zacznę od drugiego przycisku który tworzy nową lokalną sesję PS w nowym oknie. Pierwszy przycisk umożliwia nawiązanie połączenia zdalnego z PS na innym komputerze. W tym celu należy podać nazwę komputera i login użytkownika.image

Po nawiązaniu połączenia ukaże się okno z prośbą o podanie hasła użytkownika
image

Po poprawnym połączeniu pokaże się konsola PS
image

Plugins
Z ciekawszych rzeczy jakie oferuje PowerShell ISE to możliwość tworzenia własnych pionowych widoków. O tworzeniu takich widoków napiszę kiedy indziej. Wraz z wersja 3 do dyspozycji użytkowników oddano komendę Show-Command która wyświetla okno prezentujące wszystkie moduły i polecenia dostępne na danym komputerze.
image

W polu Name można wpisać nazwę szukanego apletu. Lista dostępnych poleceń będzie się zmniejszać o te zawierające wprowadzony tekst. Po najechaniu na dany aplet pokazują się wszystkie jego parametry. Gwiazdką (*)oznaczone są parametry wymagane.
image

W tym oknie można wypełnić pola parametrów i wykonać taki aplet od razu w konsoli używając przyciska Run lub skopiować aplet z parametrami do schowka używając przycisku Copy.

To na tyle jeśli chodzi o PowerShell ISE i ważniejsze jego funkcje. W niedługim czasie zaprezentuję dodatek który znacząco zwiększa funkcjonalność tego edytora.

PowerShell

Po długim czasie wracam do pisania bloga. Tym razem zacznę pisanie od przedstawienia narzędzia jakim jest PowerShell. PowerShell jest językiem skryptowy dostępnym na platformie .NET.

Trochę historii
Pierwsza wersja PS ujrzała światło dzienne w roku 2006 był on dostępny na systemy Windows XP SP2, Windows Server 2003, Windows Vista i Windows Server 2008.
Kolejna druga wersja (V2) ukazała się w sierpniu 2009 roku. Ta wersja wnosiła już wiele nowych udogodnień między innymi:

  • Graficzne środowisku do pisania skryptów PowerShell ISE (PowerShell Integrated Scripting Environment).
  • Nowe aplety
  • Transakcje na wykonywany skrypt.
  • PowerShell Remoting

Trzecia wersja PowerShell ukazała się w grudniu 2011 roku. Wniosła trochę mniej nowości w stosunku do wersji drugiej. Nowości jakie się pokazały to między innymi:

  • Scheduller Job
  • Session connectivity
  • Imporoved code writing
  • Delegation support
  • Help update
  • Automatic module detection

Czwarta wersja i aktualna wersja ukazała się z kolei październiku 2013 roku. Nowości jakie przyniosła ta wersja to np.:

  • Desired State Configuration
  • New Default Execution Policy
  • Save-Help
  • Network diagnostics
  • -PipelineVariable switch

Zastosowanie PowerShell
W świecie .NET i Wondows PowerShell ma szerokie zastosowanie od instalacji i zarządzania dodatkowymi pakietami w dodatku NuGet przez zarządzanie schematem bazy danych w Entity Framework 5 po instalowanie najróżniejszych aplikacji w narzędziu Chocolatey Gallery.
Microsoft dodaje również do każdego swojego narzędzia zestaw apletów PowerShell które umożliwiają zarządzanie tymi serwerami/narzędziami z poziomu wiersza poleceń. W kolejnych postach będę prezentował niektóre takie polecenia przydatne programistom.

Składnia
Składania jak jest w PowerShell jest podobna do każdego języka występuje to deklarowanie zmiennych, pętle, instrukcje warunkowe itp. To co wyróżnia język PowerShell to podejście jakie zastosował Microsoft podczas tworzenia. Połączył on dobre praktyki C# i języków skryptowych. Teraz nie trzeba kończyć linii znakiem średnika ‘;’ jak to jest w C#. Zmienne nie mają określonego typu to wartość zmiennej ma określony typ.

Możliwości PowerShell
Możliwości jakie daje PowerShell są ogromne wynika to z faktu że został napisany w .NET a co idzie za tym ma wspólne środowisko uruchomieniowe (CLR) z C# czy VB. Dzięki wspólnemu CLR można w skryptach PowerShell używać obiektów i metod dostępnych w .NET i używanych w C# czy VB. Dodatkowym argumentem jest możliwość tworzenia własnych apletów w C# zamiast jaki skrypty PowerShell.

W kolejnym poście skupie się za środowisku graficznym PowerShell ISE do pisania skryptów.

Post Navigation