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



22.04.2015

Zarządzanie prywatnymi...

SUSE OpenStack Cloud 5
15.04.2015

Do CAD/CAM

BenQ BL2710PT i BL3200PT
08.04.2015

Turbowydajnie

QNAP TS-x53U Turbo NAS
03.04.2015

Dla datacenter

WD Re+
31.03.2015

NAS dla MŚP

Dlink Cloud ShareCenter+
26.03.2015

Profesjonalny monitoring

SMAX AV1/AU1
24.03.2015

Laboratorium testowo-pokazowe

Bezpieczeństwo sieciowe
20.03.2015

27 cali i WQHD

AOC Q2778VQE
18.03.2015

Wydajnie i szybko

Infortrend EonStor DS2000

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"