Creative Saplings

O zmiennych

8 stycznia, 2021
No Comments
  • 09.11.2020
  • 9 minut na przeczytanie
    • S
    • s
    • q

Krótki opis

Opisuje, w jaki sposób zmienne przechowują wartości, które mogą być używane w PowerShell.

Długi opis

W zmiennych programu PowerShell można przechowywać wszystkie typy wartości. Na przykład zapisz wyniki poleceń i zapisz elementy używane w poleceniach i wyrażeniach, takie jak nazwy, ścieżki, ustawienia i wartości.

Zmienna to jednostka pamięci, w której przechowywane są wartości. W programie PowerShell zmienne są reprezentowane przez ciągi tekstowe rozpoczynające się od znaku dolara ($), na przykład $a, $process lub $my_var.

W nazwach zmiennych nie jest rozróżniana wielkość liter i mogą one zawierać spacje i znaki specjalne. Jednak nazwy zmiennych, które zawierają znaki specjalne i spacje są trudne w użyciu i należy ich unikać. Aby uzyskać więcej informacji, zobacz Nazwy zmiennych, które zawierają znaki specjalne.

W PowerShell jest kilka różnych typów zmiennych.

  • Zmienne utworzone przez użytkownika: zmienne utworzone przez użytkownika są tworzone i obsługiwane przez użytkownika. Domyślnie zmienne tworzone w wierszu poleceń programu PowerShell istnieją tylko wtedy, gdy okno programu PowerShell jest otwarte. Gdy okno programu PowerShell jest zamknięte, zmienne są usunięte. Aby zapisać zmienną, dodaj ją do swojego profilu PowerShell. Możesz także tworzyć zmienne w skryptach o zasięgu globalnym, skryptowym lub lokalnym.

  • Automatyczne va riables: Zmienne automatyczne przechowują stan programu PowerShell. Te zmienne są tworzone przez program PowerShell, a program PowerShell zmienia ich wartości zgodnie z wymaganiami, aby zachować ich dokładność. Użytkownicy nie mogą zmieniać wartości tych zmiennych. Na przykład zmienna $PSHOME przechowuje ścieżkę do katalogu instalacyjnego programu PowerShell.

    Aby uzyskać więcej informacji, listę i opis zmiennych automatycznych, zobacz about_Automatic_Variables.

  • Zmienne preferencji: Zmienne preferencji przechowują preferencje użytkownika dla programu PowerShell. Zmienne te są tworzone przez PowerShell i wypełniane wartościami domyślnymi. Użytkownicy mogą zmieniać wartości tych zmiennych. Na przykład zmienna $MaximumHistoryCount określa maksymalną liczbę wpisów w historii sesji.

    Aby uzyskać więcej informacji, listę i opis zmienne preferencji, zobacz about_Preference_Variables.

Praca ze zmiennymi

Aby utworzyć nową zmienną, użyj instrukcji przypisania, aby przypisać wartość do zmiennej. nie musisz deklarować zmiennej przed jej użyciem. Domyślna wartość wszystkich zmiennych to $null.

Aby uzyskać listę wszystkich zmiennych w sesji PowerShell, wpisz Get-Variable. Nazwy zmiennych są wyświetlane bez poprzedzającego znaku dolara ($) używanego do odwoływania się do zmiennych.

Na przykład:

Zmienne są przydatne do przechowywania wyników poleceń.

Na przykład:

Aby wyświetlić wartość zmiennej, wpisać nazwę zmiennej poprzedzoną znakiem adollar ($).

Na przykład:

Aby zmienić wartość zmiennej, przypisz do niej nową wartość.

Poniższe przykłady wyświetlają wartość zmiennej $MyVariable, zmieniają wartość zmiennej, a następnie wyświetlają nowa wartość.

Aby usunąć wartość zmiennej, użyj polecenia cmdlet Clear-Variable lub zmień wartość ue to $null.

Aby usunąć zmienną użyj opcji Usuń zmienną lub usuń element.

Typy zmiennych

W zmiennej można przechowywać dowolny typ obiektu, w tym liczby całkowite, ciągi znaków, tablice i tabele skrótów. Oraz obiekty, które reprezentują procesy, usługi, dzienniki zdarzeń i komputery.

Zmienne PowerShell mają luźne typy, co oznacza, że nie są ograniczone do określonego typu obiektu. Pojedyncza zmienna może nawet zawierać kolekcję, lub tablicy, różnych typów obiektów w tym samym czasie.

Typ danych zmiennej jest określony przez typy .NET wartości tej zmiennej. Aby wyświetlić typ obiektu zmiennej, użyj funkcji Get- Członek.

Na przykład:

Możesz użyć atrybutu typu i notacji rzutowania, aby upewnić się, że zmienna może zawierać tylko określone typy obiektów lub obiekty, które można przekonwertować na ten typ.Jeśli spróbujesz przypisać wartość innego typu, program PowerShell spróbuje przekonwertować wartość na jej typ. Jeśli typu nie można przekonwertować, instrukcja przypisania nie powiedzie się.

Aby użyć notacji rzutowanej, wprowadź nazwę typu w nawiasach kwadratowych przed nazwą zmiennej (po lewej stronie instrukcji przypisania). Poniższy przykład tworzy zmienną $number, która może zawierać tylko liczby całkowite, zmienną $words, która może zawierać tylko ciągi, oraz $dates zmienna, która może zawierać tylko obiekty DateTime.

Używanie zmiennych w poleceniach i wyrażeniach

Aby użyć zmiennej w poleceniu lub wyrażeniu, wpisz nazwę zmiennej poprzedzoną znakiem dolara ($).

Jeśli nazwa zmiennej i znak dolara nie są ujęte w cudzysłów lub jeśli są one zawarte w cudzysłowie ("), t Wartość zmiennej jest używana w poleceniu lub wyrażeniu.

Jeśli nazwa zmiennej i znak dolara są ujęte w pojedynczy cudzysłów ("), nazwa zmiennej jest używany w wyrażeniu.

Aby uzyskać więcej informacji na temat używania znaków cudzysłowu w programie PowerShell, zobaczabout_Quoting_Rules.

Ten przykład pobiera wartość $PROFILE, która jest ścieżką do pliku profilu użytkownika programu PowerShell w konsoli PowerShell.

W tym Na przykład pokazano dwa polecenia, które mogą otworzyć profil programu PowerShell innotepad.exe. W przykładzie z cudzysłowami (") użyto zmiennej „svalue.

W poniższych przykładach zastosowano zmienną cudzysłowy (") traktują zmienną jako tekst literalny.

Nazwy zmiennych zawierające znaki specjalne

Nazwy zmiennych zaczynają się od dolara ( $) i może zawierać znaki alfanumeryczne i specjalne. Długość nazwy zmiennej jest ograniczona tylko dostępną pamięcią.

Najlepszą praktyką jest to, że nazwy zmiennych zawierają tylko znaki alfanumeryczne i znak podkreślenia (_). Nazwy zmiennych zawierające spacje i inne znaki specjalne są trudne w użyciu i należy ich unikać.

Alfanumeryczne nazwy zmiennych mogą zawierać te znaki :

  • Znaki Unicode z następujących kategorii: Lu, Ll, Lt, Lm, L o lub Nd.
  • Znak podkreślenia (_).
  • Znak zapytania (?).

Poniższa lista zawiera opisy kategorii Unicode. Aby uzyskać więcej informacji, zobacz kategorię Unicode.

  • Lu – UppercaseLetter
  • Ll – LowercaseLetter
  • Lt – TitlecaseLetter
  • Lm – ModifierLetter
  • Lo – OtherLetter
  • Nd – DecimalDigitNumber

Aby utworzyć lub wyświetlić nazwę zmiennej, która zawiera spacje lub znaki specjalne, należy ująć nazwę zmiennej krzyżykiem nawiasy klamrowe ({}) znaki. Nawiasy klamrowe bezpośrednio PowerShell interpretuje znaki nazwy zmiennej jako literały.

Nazwy zmiennych ze znakami specjalnymi mogą zawierać następujące znaki:

Na przykład poniższe polecenie tworzy zmienną o nazwie save-items. Nawiasy klamrowe ({}) są potrzebne, ponieważ nazwa zmiennej zawiera łącznik (-) znak specjalny.

Następujące polecenie pobiera elementy podrzędne w katalogu reprezentowanym przez ProgramFiles(x86) enviro nment zmiennej.

Aby odwołać się do nazwy zmiennej zawierającej nawiasy klamrowe, umieść nazwę zmiennej w nawiasach i użyj znaku odwrotnego znaku, aby zmienić znaczenie nawiasów. Na przykład, aby utworzyć zmienną o nazwie this{value}is type:

Zmienne i zakres

Domyślnie zmienne są dostępne tylko w zakresie, w którym zostały utworzone.

Na przykład zmienna utworzona w funkcji jest dostępna tylko w funkcji. Zmienna, którą tworzysz w skrypcie, jest dostępna tylko w skrypcie. Jeśli utworzysz skryptu za pomocą kropki, zmienna zostanie dodana do bieżącego zakresu. Aby uzyskać więcej informacji, zobacz about_Scopes.

Możesz użyć modyfikator zasięgu do zmiany domyślnego zakresu zmiennej. Poniższe wyrażenie tworzy zmienną o nazwie Computers. Zmienna ma zasięg globalny, nawet jeśli została utworzona w skrypcie lub funkcji.

Dla każdego skryptu lub polecenia, które są wykonywane poza sesją, potrzebujesz modyfikatora zakresu Using, aby osadzić zmienną wartości z zakresu sesji wywołującej, tak aby kod sesji miał do nich dostęp.

Aby uzyskać więcej informacji, zobacz about_Remote_Variables.

Zapisywanie zmiennych

Zmienne, które tworzysz są dostępne tylko w sesji, w której je tworzysz. Są one tracone po zamknięciu sesji.

Aby utworzyć zmienną w każdej rozpoczynanej sesji PowerShell, dodaj zmienną do swojego profilu PowerShell.

Na przykład, aby zmienić wartość zmiennej $VerbosePreference w każdej sesji programu PowerShell dodaj następujące polecenie do swojego profilu programu PowerShell.

Możesz dodać to polecenie do swojego profilu PowerShell, otwierając plik $PROFILE w edytorze tekstu, takim jak notepad.exe. Aby uzyskać więcej informacji na temat profili PowerShell, zobacz about_Profiles.

Zmienna: dysk

Dostawca zmiennych programu PowerShell tworzy dysk Variable:, który wygląda i działa jak dysk systemu plików, ale zawiera zmienne w sesji i ich wartości.

Aby przejść na dysk Variable:, użyj następującego polecenia:

Aby wyświetlić elementy i zmienne na dysku Variable:, użyj lub Get-ChildItem poleceń cmdlet.

Aby uzyskać wartość określonej zmiennej, użyj notacji systemu plików, aby określić nazwę napędu i nazwę zmiennej. Na przykład, aby uzyskać automatyczną zmienną $PSCulture, użyj następującego polecenia.

Aby wyświetlić więcej informacji o dysku Variable: i dostawcy PowerShellVariable, wpisz:

Zmienna składnia ze ścieżkami dostawców

Możesz poprzedzić ścieżkę dostawcy znakiem dolara ($) i uzyskać dostęp do zawartości dowolnego dostawcy, który implementuje interfejs IContentCmdletProvider.

Następujący wbudowani dostawcy PowerShell obsługują tę notację:

  • about_Environment_Provider
  • about_Variable_Provider
  • about_Function_Provider
  • about_Alias_Provider

Zmienne polecenia cmdlet

PowerShell zawiera zestaw poleceń cmdlet przeznaczonych do zarządzania zmiennymi.

Aby wyświetlić listę poleceń cmdlet, wpisz:

Aby uzyskać pomoc dotyczącą konkretnego polecenia cmdlet, wpisz:

Nazwa cmdletu Opis
Clear-Variable Usuwa wartość zmiennej.
Get-Variable Pobiera zmienne w bieżącej konsoli.
New-Variable Tworzy nową zmienną.
Remove-Variable Usuwa zmienną i jej wartość.
Set-Variable Zmienia wartość zmiennej.

Zobacz też

about_Automatic_Variables

about_Environment_Variables

Articles
Previous Post

Jennifer Aniston Wzrost, waga, wiek, statystyki ciała

Next Post

Jak myć dredy: krok po kroku - DreadlocKulture

Dodaj komentarz Anuluj pisanie odpowiedzi

Najnowsze wpisy

  • Najlepsze szkoły fotograficzne na świecie, 2020
  • Suwerenni obywatele zabierają na drogi swoją antyrządową filozofię
  • Przewodnik po kosztach naprawy sztukaterii
  • Muckrakers (Polski)
  • Precyzyjna onkologia

Archiwa

  • Luty 2021
  • Styczeń 2021
  • Grudzień 2020
  • Listopad 2020
  • Październik 2020
  • Wrzesień 2020
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어
Proudly powered by WordPress | Theme: Fmi by Forrss.