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

28.01.2015

Montaż w 30 minut

Emerson InstaRack
26.01.2015

Superszybkie skanery

KV-S1057C i KV-S1027C
23.01.2015

Konkursy technologiczne 2015

Firmy z branży IT i telekomunikacyjnej pracujące dla sektora finansowego mogą zgłaszać...
23.01.2015

Wydajne NAS-y

Asustor 50T i 51T
20.01.2015

AP dla MSP

Edimax ProWAP1200
16.01.2015

Dwa w jednym

Axis Q6000-E
13.01.2015

40-calowy monitor 4K

Philips BDM4065UC
08.01.2015

Pełna współpraca

Cisco Project Squared
05.01.2015

Bezpieczny OS

Netgear ReadyNAS OS 6.2

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"