If-Koubou

5 Cmdlets, aby rozpocząć pracę z PowerShell

5 Cmdlets, aby rozpocząć pracę z PowerShell (Jak)

PowerShell szybko staje się preferowanym językiem skryptowym i interfejsem CLI dla zaawansowanych użytkowników, jak również dla specjalistów IT. Warto zapoznać się z kilkoma poleceniami, aby zacząć, więc mamy 5 przydatnych cmdletów do nauki.

Get-Command

Get-Command jest jednym z najbardziej przydatnych cmdletów w całym PowerShellu, ponieważ pomoże ci opanować PowerShell, umożliwiając wyszukiwanie określonych cmdletów. Samo używanie Get-Command jest niezbyt użyteczne, ponieważ wypluwa każde polecenie PowerShell.

Ale z tego widać, że obiekty te, że wyjścia PowerShell mają zarówno właściwość Name, jak i ModuleName. Korzystając z tych informacji, możemy dokładnie przeanalizować nasze poszukiwania, wyszukując cmdlet zawierające określone terminy. Na przykład, jeśli chciałbym znaleźć wszystkie polecenia cmdlet zawierające słowo "IP", mógłbym to zrobić:

Pobierz polecenie -Nazwa * IP *

Jak widać nadal otrzymujemy sporo wyników, naszą następną opcją jest przeszukiwanie w ramach określonego modułu. W naszym przypadku wybiorę moduł NetTCPIP.

Pobierz-Polecenie -Moduł NetTCPIP -Nazwa * IP *

Wezwać pomoc

Po znalezieniu cmdletu, którego szukasz za pomocą polecenia Get-Command, będziesz chciał poznać składnię i sposób korzystania z tego konkretnego polecenia cmdlet. Tutaj pojawia się Get-Help, jeśli kiedykolwiek używałeś wiersza poleceń w Windowsie, prawdopodobnie zrobiłeś coś takiego:

ipconfig /?

Cóż, to nie działa w PowerShellu, ponieważ w PowerShell jest miejsce na oddzielenie polecenia od jego parametrów. Zamiast tego używamy Get-Help i przekazujemy nazwę cmdlets do Get-Help jako parametru.

Get-Help Get-Help

Get-Member

Get-Member pozwala nam uzyskać informacje o obiektach zwracanych przez cmdlety. Połów z get-członkiem polega na tym, że opiera się na funkcji potoku PowerShell, aby to zademonstrować, będziemy mogli użyć polecenia cmdlet Get-Process.

Jak widać, wyniki PowerShell pokazują nam niektóre właściwości, które można zobaczyć na górze każdej kolumny. Pierwszy problem polega na tym, że chociaż są to właściwości, których najczęściej szukasz, wciąż jest ich więcej. Drugi problem polega na tym, że nie pokazuje żadnych metod, które możemy wywołać na obiekcie. Aby zobaczyć metody i właściwości, możemy wyprowadzić nasze wyniki do Get-Member, na przykład:

Get-Process | Get-Member

Chociaż może to teraz nic nie oznaczać, prędzej czy później będziesz potrzebował korzystać z Get-Member, a im szybciej nauczysz się go używać, tym lepiej. Jako przykład, używając informacji z wyjścia możemy zrobić coś takiego:

Start-Process notepad.exe
NotepadProc = Get-Process -Name Notatnik
$ NotepadProc.WaitForExit ()
Uruchom proces calc.exe

Ten skrypt uruchomi notatnik, a następnie przypisze wynik "Notatnika Get-Process -Name" do zmiennej $ NotepadProc, następnie wywołujemy metodę WaitForExit na NotepadProc, co powoduje zatrzymanie skryptu do momentu zamknięcia notatnika po zamknięciu notatnika następnie uruchomi się kalkulator.

$ _ (Bieżący obiekt Pipeline)

Chociaż nie jest to dokładnie cmdlet, jest to jedna z najczęściej używanych zmiennych specjalnych w PowerShell. Oficjalna nazwa dla $ _ jest "bieżącym obiektem rurociągu". Używa się go w blokach skryptów, filtrach, klauzuli procesu funkcji, obiekt-obiekt, foreach-obiekt i przełączniki. Jednak łatwiej jest wyjaśnić na przykładzie, który prowadzi nas do naszego następnego i ostatniego polecenia cmdlet, Where-Object.

Gdzie-obiekt

Gdzie-obiekt robi dokładnie to, co brzmi, wybiera obiekt na podstawie tego, czy spełnia określone kryteria. Spowoduje to połączenie $ _ i właściwości, które możemy zobaczyć za pomocą Get-Member. Aby to zademonstrować, poprowadzimy wyjście Get-Process do cmdletu Where-Object.

Get-Process | Where-Object $ _. Name -eq "iexplore"

Więc o co tutaj chodzi? Cóż, pierwszą rzeczą, którą robimy, jest uzyskanie listy procesów na naszym komputerze i przekazanie danych wyjściowych (przy użyciu znaku |) do naszego polecenia cmdlet Where-Object, które przyjmuje blok skryptu jako parametr. Blok skryptu (zdefiniowany przez nawiasy klamrowe) instruuje polecenia cmdlet Where-Object, aby wybierały tylko obiekty, których parametr nazwy jest równy "iexplore", a więc otrzymujemy tylko listę instancji IE, które są uruchomione. To wszystko, co do niego należy, baw się dobrze!