Dolar-daszek, dolar-dolar

•Luty 15, 2017 • Dodaj komentarz

dolar-daszekDziś krótki wpis o dwóch zmiennych, którym nie poświęciłem zbyt wiele uwagi gdy usłyszałem o nich po raz pierwszy. Wówczas nie widziałem dla nich kompletnie żadnego zastosowania. Dziś nie mam już wątpliwości: ich przydatność jest tylko kwestią wyobraźni użytkownika i choć w zasadzie ogranicza się ona do interaktywnej konsoli, to będąc jej stałym użyszkodnikiem – nie wyobrażam sobie jak mogłem kiedyś sobie bez tych dwóch zmiennych radzić. Zmienne mają bardzo krótkie nazwy, dzięki czemu korzystanie z nich nie wymaga wielu znaków: wystarczy standardowy znak dolara (oznaczającego zmienną) i jednoznakowa nazwa: dolar lub "daszek".

Czytaj dalej ‚Dolar-daszek, dolar-dolar’

Historia… inaczej.

•Luty 8, 2017 • Dodaj komentarz

history_bookOd jakiegoś czasu noszę się z zamiarem napisania o grupie modułów, których autorem jest Kirk Munro – jeden z niewielu ludzi, którzy tytuł PowerShell MVP noszą tak długo, że trudno oprzeć się wrażeniu, że z tytułem tym się urodzili. Kirk to dynamit, człowiek pełen pomysłów a gdy zaczyna pomysły te wprowadzać w życie… Dziś o module, który zmienia zasadniczo sposób pracy z historią poleceń.

Moduł HistoryPx przeznaczony jest dla wszystkich wersji PowerShella, począwszy od wersji trzeciej. Zmienia on w sposób zasadniczy to, jak zachowuje się nasza konsola i pozwala nam cofać się do przeszłości. Zanim jednak przyjrzymy się temu jak świat wygląda po zainstalowaniu i zaimportowaniu tego modułu, pomówmy sobie chwilę o tych wszystkich sytuacjach, gdy czegoś w PowerShellu nam brakowało…

Czytaj dalej ‚Historia… inaczej.’

TabExpansion Plus Plus – rewizyta

•Październik 31, 2016 • Dodaj komentarz

Minęły przeszło dwa lata od posta, w którym starałem się Wam przybliżyć moduł TabExpansion++. W tak zwanym międzyczasie autor projektu, Jason Shirk, wrócił "do domu" i pracuje ponownie w zespole odpowiedzialnym za PowerShella. Wraz z nim do "rdzenia" powróciły oba jego projekty, o których pisałem na moim blogu: TabExpansion++ oraz PSReadline. O ile jednak PSReadline (pomijając znaczącą rozbudowę i dodanie kolejnych możliwości, oraz zmianę przestrzeni nazw, w której znajdziemy wszelkie metody z modułem związane) nie zmienił się znacznie, o tyle zmian w TabExpansion++ nie brakuje.

Czytaj dalej ‚TabExpansion Plus Plus – rewizyta’

Przedsprzedaż spełnionych marzeń

•Czerwiec 27, 2016 • 10 komentarzy

windows-powershell-bibliaGdy przeszło pięć lat temu napisałem pierwszy artykuł na tym blogu, wspomniałem o kilku celach, które pragnąłem osiągnąć. Cele to chyba jednak zbyt mocne słowo. Bardziej marzenia…

Pierwsze z nich, polonizacja PowerShella, nigdy nie doszła do skutku. Choć przyznam, że pokusa by do tego zagadnienia wrócić teraz jest większa niż kiedykolwiek wcześniej: pomoc jest dostępna na GitHubie, więc środki po temu, by przetłumaczyć pomoc na język ojczysty w zasadzie są dostępne. Cóż jednak z tego, skoro czasu zwyczajnie brakuje, by choć zacząć.

Czytaj dalej ‚Przedsprzedaż spełnionych marzeń’

Z innej beczki: aliasy.

•Maj 31, 2016 • Dodaj komentarz

Planowałem już od dłuższego czasu skrobnąć kolejną część cyklu o modułach innych niż skryptowe, ale maj przemknął mi przed oczami: najpierw majowe wakacje dzieciaków połączone z podróżą do Ziemi Ojczystej i zwieńczone komunią chrześniaka, dalej drugie urodziny najmłodszej i komunia najstarszej córci i nim zerknąłem w kalendarz – przyszło powoli żegnać się z tym pięknym miesiącem. Pogoda również nie nastrajała "komputerowo", choć biorąc pod uwagę fakt, że na pisanie czas zwykle znajduję i tak w nocy…

Zamiast więc kolejnej części cyklu słów kilka o tym, na co natknąłem się w zasadzie niedawno, a co może Wam się przydać w trakcie pisania zarówno kompilowanych, jak i skryptowych poleceń.

Czytaj dalej ‚Z innej beczki: aliasy.’

Piszemy sobie moduł: C# (2)

•Kwiecień 24, 2016 • Dodaj komentarz

ModulBinarny2Coś nie specjalnie (póki co) udaje mi się dotrzymać obietnicy – pisuję nadal rzadko. Cóż jednak zrobić, gdy doba nie chce się wydłużyć, a ilość rzeczy do zrobienia piętrzy się nieustannie. Dziś jednak w końcu mam chwilkę czasu, wypada więc zamknąć to, co zaczęliśmy jakiś czas temu.

W pierwszej części napisaliśmy banalnie prosty moduł. Przyjrzeliśmy się temu, jak utworzyć odpowiedni projekt, pobrać niezbędne biblioteki i wreszcie – jak przyjrzeć się naszemu modułowi w debuggerze. Dziś przyjrzymy się temu, jak wokół modułu binarnego zbudować pełny moduł: z manifestem, plikami pomocy, formatów i typów.

Czytaj dalej ‚Piszemy sobie moduł: C# (2)’

Piszemy sobie moduł: C# (1)

•Marzec 16, 2016 • Dodaj komentarz

ModulBinarny_01Pisanie modułów skryptowych w PowerShellu to rzecz trywialna dla każdego, komu zdarzyło się w PowerShellu "popełnić" kilka skryptów. W ostateczności moduł taki możemy utworzyć wrzucając kilka funkcji do pliku z rozszerzeniem psm1. Jeśli mamy skrypty stanowiące swoiste biblioteki funkcji może wręcz wystarczyć zmiana nazwy pliku. Wreszcie – importować w ten sposób można również pliki z rozszerzeniem ps1, nic nie stoi więc na przeszkodzie by zwyczajny skrypt zacząć traktować jako moduł skryptowy. Dlatego właśnie postanowiłem przyjrzeć się dwóm pozostałym opcjom. Na pierwszy ogień idzie moduł binarny. A ponieważ z języków, w jakich można moduł taki napisać, najbliższy memu sercu jest C# – z niego właśnie w trakcie pisania modułu skorzystam.

Czytaj dalej ‚Piszemy sobie moduł: C# (1)’