Articles

funkcje PowerShell

gdy potrzebujemy użyć tego samego kodu w więcej niż jednym skrypcie, wtedy używamy funkcji PowerShell.

funkcja jest listą poleceń PowerShell, których nazwa jest przypisana przez użytkownika. Kiedy wykonujemy funkcję, wpisujemy jej nazwę.

podobnie jak cmdlety, funkcje mogą również mieć parametry. Parametry funkcji można odczytać z potoku lub z wiersza poleceń.

w PowerShell funkcje zwracają wartości, które można przypisać do zmiennych lub przekazać do cmdletów lub innych funkcji. Używając słowa kluczowego return, możemy określić wartość zwracaną.

składnia

następujący blok opisuje składnię funkcji:

powyższa składnia zawiera następujące terminy:

  • słowo kluczowe funkcji
  • nazwa, którą podajesz
  • zakres (opcjonalny)
  • dowolna liczba nazwanych parametrów
  • jedno lub więcej poleceń PowerShell, które są zamknięte nawiasami klamrowymi {}.

zakres funkcji

  • w PowerShell, funkcja istnieje w zakresie, w którym została utworzona.
  • Jeśli funkcja jest w skrypcie, jest dostępna tylko dla instrukcji w tym skrypcie.
  • gdy funkcja jest określona w zasięgu globalnym, możemy jej używać w innych funkcjach, skryptach i wierszu poleceń.

prosta funkcja

poniższy blok opisuje, jak utworzyć najprostszą funkcję w PowerShell:

aby dodać wiele instrukcji do funkcji, musimy użyć średnika, aby oddzielić instrukcje lub wpisać każdą instrukcję w osobnej linii.

aby użyć funkcji, wpisz jej nazwę w poniższym bloku:

przykład:

wpisz następujące polecenie w konsoli PowerShell, aby uzyskać wynik powyższego przykładu:

Wyjście:

Windows Operating SystemLinux operating System

funkcja zaawansowana

FUNKCJE ZAAWANSOWANE to te funkcje, które mogą wykonywać operacje podobne do operacji wykonywanych za pomocą cmdletów. Funkcje te są używane, gdy użytkownik chce napisać funkcję bez konieczności pisania skompilowanego cmdleta.

główną różnicą pomiędzy używaniem skompilowanych cmdletów a zaawansowaną funkcją jest to, że skompilowane cmdlety są klasami .Net Framework, który musi być napisany w języku.NET framework. Zaawansowane funkcje są napisane w języku skryptowym PowerShell.

poniższy przykład opisuje sposób użycia zaawansowanej funkcji w PowerShell:

wpisz następujące polecenie w konsoli PowerShell, aby uzyskać wynik powyższego przykładu:

wyjście:

cmdlet Send-Greeting at command pipeline position 1Supply values for the following parameters:Name: AmanHi Aman!

przykłady funkcji

Przykład1: poniższy przykład jest prostą funkcją, która zwraca bieżącą datę

wpisz następujące polecenie w konsoli PowerShell, aby uzyskać wynik powyższego przykładu:

wyjście:

15 November 2019 14:41:17

Przykład2: poniższy przykład jest funkcją, która przyjmuje jeden parametr i zwraca wartość dla tego parametru.

wpisz następujące polecenie, aby uzyskać dane wejściowe od użytkownika w powyższym przykładzie:

wyjście:

Enter a value: 10

wpisz następujące polecenie, aby zapisać wartość zwracaną z funkcji w zmiennej, która wyświetla wynik funkcji:

następujące polecenie pokazuje wynik:

wyjście: