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

20.10.2014

Po kablach

FRITZ!Powerline 540E
17.10.2014

Klasa biznes

DCP-L8400CDN
14.10.2014

Pamięć 512 GB

SanDisk Extreme PRO
10.10.2014

Projektor sterowany kodami QR

Epson EB-W28 3LCD
08.10.2014

Nowe serwery HP

HP ProLiant Gen9
06.10.2014

Router Wi-Fi AC 1900

D-Link DIR-880L
02.10.2014

Pełne bezpieczeństwo

Kaspersky Internet Security 2015
30.09.2014

SECURE 2014

XVIII konferencja nt. bezpieczeństwa ICT
29.09.2014

Ochrona sieci firmowej

Dr. Web Enterprise Security Suite 10.0

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"