Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.

19.12.2014

Nowe NAS-y z serii AS70T

Asustor AS7004T
17.12.2014

Nowe HP Moonshot

ProLiant m300, m350 i m710
15.12.2014

Dla biznesu

Brother MFC-L2720DW i L2740DW
12.12.2014

Krótki rzut

Epson Seria EB-5xx
10.12.2014

Wiwat miniaturki

Asus VivoPC
08.12.2014

Ochrona centrów danych

FortiGate-3810D
05.12.2014

Sprawdzone pakiety

ESET Smart Security/NOD32 Antivirus
03.12.2014

Wielopoziomowa ochrona

Check Point Capsule
01.12.2014

Secure 2014

Secure 2014

Komendy systemowe

Data publikacji: 01-08-2012 Autor: Bartosz Bielawski

Korzystając często z Windows PowerShell, przyzwyczajamy się do pewnych jego cech: polecenia i ich parametry są uzupełniane za pomocą tabulatora, pomoc oferuje nam nie tylko opis składni, ale dokładną charakterystykę poszczególnych parametrów oraz gotowe przykłady użycia aktualnej komendy. I najważniejsze chyba – na wyjściu uzyskujemy obiekty, które można łatwo sortować, filtrować i eksportować.

Problem pojawia się, gdy te same schematy zechcemy zastosować do poleceń systemowych. O ile ich nazwę komendy PowerShell dopełni bez trudu, o tyle pozostałych udogodnień niestety nie uzyskamy. Parametry musimy pamiętać lub wyczytać w pomocy (która nie jest spójna z pomocą dołączoną do poleceń PowerShella), a na wyjściu uzyskamy tekst, który musimy później sami przetworzyć, by uzyskać interesujący nas wynik. By z problemem tym sobie poradzić, możemy oczywiście sami stworzyć narzędzie, które oferując podobne do natywnych narzędzi funkcje, da nam również wszystkie pożytki z cmdletów.

 

Można napisać całą aplikację od zera, korzystając z WMI, platformy .NET lub obiektów typu COM. Często jednak łatwiej jest użyć narzędzi już istniejących.

 


Wystarczy opakować je w odpowiednią funkcję, dopisać stosowną pomoc i zadbać, by na wyjściu pojawiały się rozbudowane obiekty, a nie zwykły tekst.

 

W artykule tym spróbujemy przedstawić proces tworzenia modułu, składającego się z funkcji korzystających z drugiego, nieco łatwiejszego do zaimplementowania rozwiązania. Postaramy się opakować niektóre z narzędzi dostępnych w systemie Windows tak, by z punktu widzenia użytkownika przestały się one różnić od zwykłych poleceń PowerShella. Tak jak wspomnieliśmy – konieczne będzie zadbania zarówno o odpowiednio skonstruowane wejście: łatwe do zinterpretowania parametry poleceń, czasem ograniczone odpowiednio wartości argumentów. Konieczne też będzie odpowiednie przetłumaczenie wejścia na składnię opakowywanego polecenia. Na koniec zaś będziemy musieli przekształcić uzyskiwany na wyjściu tekst w obiekty, które dalej będziemy mogli przetwarzać: sortować, filtrować, eksportować.

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

All rights reserved © 2013 Presscom / Miesięcznik "IT Professional"