Samouczek PowerShell dla początkujących

⚡ Inteligentne podsumowanie

PowerShell Scripting to obiektowy silnik automatyzacji oparty na platformie .NET. Łączy polecenia cmdlet, skrypty i język skryptowy, aby pomóc administratorom IT w automatyzacji. Windows, zarządzaj usługami i łącz zdalne maszyny z poziomu jednego wiersza poleceń.

  • 🚀 Uruchom prawą powłokę: Otwórz program PowerShell lub PowerShell ISE z menu Start i uruchom go jako administrator, gdy potrzebujesz podwyższonych uprawnień.
  • 🧩 Używaj poleceń cmdlet, a nie poleceń tekstowych: Polecenia cmdlet stosują wzorzec nazw składający się z czasownika i rzeczownika oraz zwracają obiekty .NET, dzięki czemu dane wyjściowe mogą być przesyłane do następnego polecenia cmdlet poprzez potok.
  • 🔐 Ostrożnie ustaw zasady wykonywania: Użyj Set-ExecutionPolicy z RemoteSigned, aby zachować równowagę między bezpieczeństwem a wygodą podczas uruchamiania skryptów .ps1.
  • 📁 Napisz skrypty .ps1 nadające się do ponownego użycia: Połącz polecenia cmdlet, zmienne i potoki w pliku tekstowym z rozszerzeniem .ps1, aby zautomatyzować powtarzające się zadania administracyjne.
  • 🤖 Połącz program PowerShell ze sztuczną inteligencją: Asystenci AI przekształcają zwykłe zapytania w gotowe do uruchomienia skrypty programu PowerShell i wyjaśniają nieznane polecenia cmdlet linijka po linijce.

Samouczek PowerShell dla początkujących

Czym jest PowerShell?

Windows PowerShell to obiektowy silnik automatyzacji i język skryptowy. Jest przeznaczony dla specjalistów IT i administratorów systemów, którzy muszą kontrolować i automatyzować administrację. Windows i innych aplikacji. PowerShell rozszerza koncepcje poznane w Windows Wiersz poleceń i Windows Skrypt hosta z nowymi obiektami, poleceniami cmdlet i wydajnym potokiem.

Łączy w sobie elastyczność skryptów, szybkość wiersza poleceń i wszechstronność graficznego narzędzia administracyjnego. Dzięki niemu administratorzy mogą sprawnie rozwiązywać problemy i eliminować godziny pracy ręcznej. Ten samouczek omawia podstawy niezbędne do nauki programu PowerShell od podstaw.

Dlaczego warto używać programu PowerShell?

Najważniejsze powody korzystania z programu PowerShell to:

  • Zapewnia dobrze zintegrowaną obsługę wiersza poleceń dla systemu operacyjnego.
  • Zapewnia pełny dostęp do każdego typu w środowisku .NET.
  • Zaufali nam administratorzy systemów w przedsiębiorstwach.
  • Umożliwia manipulowanie komponentami serwera i stacji roboczej za pomocą kilku linijek.
  • Skierowany do administratorów systemów i charakteryzujący się przejrzystą składnią czasownikowo-rzeczownikową.
  • Bezpieczniejsze niż bieganie VBScript lub innych starszych języków skryptowych.

Historia PowerShella

PowerShell 1.0 został wydany po raz pierwszy w 2006 roku. Obecnie PowerShell ma wersję 7.2 i nowsze. Wraz z pojawianiem się kolejnych wersji, jego możliwości i środowiska hostingowe znacznie się rozrastały.

Historia wersji programu PowerShell:

  • PowerShell1.0 — wspierał lokalną administrację Windows Serwer 2003.
  • PowerShell2.0 — zintegrowane z Windows 7 i Windows Server 2008 R2. Dodano funkcje zdalnego dostępu, transakcji, zadań w tle, zdarzeń i debugowania.
  • PowerShell3.0 — wysłane z Windows 8 i Windows Serwer 2012 jako część Windows Framework zarządzania. Dodano zaplanowane zadania, łączność sesyjną i automatyczne ładowanie modułów.
  • PowerShell4.0 — wysłane z Windows 8.1 i Windows Server 2012 R2. Dodano konfigurację pożądanego stanu, ulepszone debugowanie i diagnostykę sieci.
  • PowerShell5.0 — część Windows Management Framework 5. Dodano zdalne debugowanie, definicje klas i wyliczenia .NET.
  • PowerShell7.2 — oparty na .NET 6.0. Dodaje nowych operatorów, dynamiczne widoki błędów i automatyczne powiadomienia o wersjach.

Funkcje programu PowerShell

  • Zdalna obsługa programu PowerShell: wywoływać skrypty i polecenia cmdlet na komputerze zdalnym.
  • Praca w tle: uruchamiaj skrypty lub potoki asynchronicznie na komputerze lokalnym lub wielu komputerach zdalnych.
  • transakcje: pozwól apletom poleceń i deweloperom wykonywać grupowane operacje, które można zatwierdzać lub wycofywać razem.
  • WKKW: słuchać, przekazywać dalej i reagować na zdarzenia związane z zarządzaniem i systemem.
  • Sieciowy transfer plików: natywne wsparcie dla priorytetowego, asynchronicznego i ograniczonego transferu plików między maszynami poprzez usługę inteligentnego transferu w tle (BITS).

Jak uruchomić program PowerShell

PowerShell jest preinstalowany w każdej najnowszej wersji Windows. Uruchom go w następujący sposób.

Krok 1) Wyszukaj PowerShell w Windows, następnie wybierz i kliknij.

Uruchom PowerShella

Krok 2) Otworzy się okno programu PowerShell.

Okno PowerShell

Polecenie cmdlet a polecenie

A polecenie cmdlet (wymawiane „command-let”) to lekkie polecenie używane w środowisku PowerShell. PowerShell wywołuje polecenia cmdlet w wierszu poleceń, a własne można tworzyć za pomocą interfejsów API PowerShell. Polecenia cmdlet różnią się od tradycyjnych poleceń powłoki w następujący sposób:

  • Polecenia cmdlet są . NET Framework obiekty klasy; nie mogą być wykonywane jako samodzielne pliki wykonywalne.
  • Polecenia cmdlet można napisać przy użyciu zaledwie kilkunastu linii kodu.
  • Analizą składniową, formatowaniem danych wyjściowych i prezentacją błędów zajmuje się środowisko wykonawcze, a nie samo polecenie cmdlet.
  • Polecenia cmdlet działają na obiektach, dzięki czemu zarówno strumienie tekstowe, jak i obiekty mogą przepływać przez potoki.
  • Polecenia cmdlet są oparte na rekordach i przetwarzają pojedynczy obiekt na raz.

Większość funkcji programu PowerShell jest dostarczana za pomocą poleceń cmdlet, które zawsze używają wzorca nazewnictwa czasownik-rzeczownik (zawsze w liczbie pojedynczej). Polecenia cmdlet zwracają obiekty, a nie tekst. scenariusz — różni się od polecenia cmdlet — jest serią poleceń przechowywanych w pliku tekstowym z .ps1 rozbudowa.

Do popularnych czasowników, których będziesz używać podczas nauki programu PowerShell, należą:

  • Get — odzyskać coś.
  • Rozpocznij — uruchomić coś.
  • wyczerpane — wyprowadzić coś.
  • Stop — zatrzymać coś, co działa.
  • Zestaw — zdefiniować coś.
  • Nowości — stworzyć coś.

Ważne polecenia programu PowerShell

Sprowadź pomoc: wyświetl pomoc dotyczącą poleceń i tematów programu PowerShell.

Przykład: wyświetl pomoc dla Format-Table dowództwo.

Get-Help Format-Table

Polecenie cmdlet Get-Help

Pobierz polecenie: uzyskać informacje o czymkolwiek, co można przywołać.

Przykład: generowanie listy poleceń cmdlet i funkcji zainstalowanych na komputerze.

Get-Command

Polecenie cmdlet Get-Command

Uzyskaj usługę: wyszukuje wszystkie usługi na komputerze.

Przykład: pobierz każdą usługę, której nazwa zaczyna się od „vm”.

Get-Service "vm*"

Polecenie cmdlet Get-Service

Zostań członkiem: pokaż co można zrobić z obiektem.

Przykład: lista członków usług maszyn wirtualnych zwróconych przez polecenie Get-Service.

Get-Service "vm*" | Get-Member

Polecenie cmdlet Get-Member

Inne przydatne polecenia cmdlet:

  • Get-Module — pokaż zainstalowane pakiety poleceń.
  • Get-Content — odczytać plik i przetworzyć jego zawartość.
  • Get-* symbol wieloznaczny — wypisz wszystkie polecenia cmdlet, które zaczynają się od „Get-“.

Przykład: utwórz folder.

New-Item -Path 'X:\Guru99' -ItemType Directory

Wyjście:

Wyjście nowego elementu

Typy danych programu PowerShell

PowerShell obsługuje standardowe typy danych .NET, dzięki czemu można przechowywać dowolne wartości w zmiennej w sposób uporządkowany.

Typy danych programu PowerShell

Zmienne specjalne

PowerShell udostępnia szereg wbudowanych zmiennych specjalnych. Poniżej wymieniono te najbardziej przydatne.

Zmienna specjalna OPIS
$Błąd Tablica obiektów błędów reprezentująca najnowsze błędy.
$Host Wyświetla nazwę bieżącej aplikacji hostującej.
$Profil Przechowuje pełną ścieżkę profilu użytkownika dla domyślnej powłoki.
$PID Przechowuje identyfikator procesu.
$PSUIkultura Zawiera nazwę bieżącej kultury interfejsu użytkownika.
$NULL Zawiera wartość pustą lub null.
$Fałsz Zawiera wartość logiczną FALSE.
$Prawda Zawiera wartość logiczną TRUE.

Skrypty PowerShell

Skrypty programu PowerShell są przechowywane w .ps1 Pliki. Domyślnie nie można uruchomić skryptu, klikając go dwukrotnie — to zabezpieczenie chroni system przed przypadkowym uszkodzeniem. Aby uruchomić skrypt, kliknij go prawym przyciskiem myszy i wybierz „Uruchom za pomocą programu PowerShell”.

Uruchom za pomocą programu PowerShell

Polityka wykonywania kontroluje, które skrypty mogą być uruchamiane. Zobacz bieżącą politykę za pomocą Get-ExecutionPolicyMożliwe wartości obejmują:

  • ograniczony — żadne skrypty nie są dozwolone. To jest ustawienie domyślne.
  • Wszystkie podpisane — uruchamiane są tylko skrypty podpisane przez zaufanego programistę, a każdy z nich wymaga potwierdzenia.
  • RemoteSigned — uruchamiane są Twoje własne skrypty, a także podpisane skrypty z zaufanych źródeł.
  • Nieograniczony — można uruchomić dowolny skrypt (należy używać oszczędnie).

Kroki zmiany zasad wykonywania:

Krok 1) Otwórz podwyższony poziom uprawnień programu PowerShell, klikając prawym przyciskiem myszy program PowerShell i wybierając Uruchom jako administrator.

Uruchom program PowerShell jako administrator

Krok 2) Uruchom poniższe polecenia.

  1. Get-ExecutionPolicy
  2. Set-ExecutionPolicy Unrestricted
  3. Wchodzę Y po wyświetleniu monitu o potwierdzenie.
  4. Get-ExecutionPolicy

Zmień politykę wykonania

Pierwszy skrypt PowerShell

Otwórz Notatnik i wpisz:

Write-Host "Hello, Guru99!"

Zapisz plik za pomocą .ps1 rozszerzenie — na przykład, FirstScript.ps1.

Zapisz FirstScript.ps1

W programie PowerShell uruchom skrypt za pomocą:

& "X:\FirstScript.ps1"

Uruchom FirstScript.ps1

Co to jest PowerShell ISE?

Windows Zintegrowane środowisko skryptowe programu PowerShell (ISE) to domyślny edytor programu PowerShell. W ISE możesz uruchamiać polecenia, pisać testy i debugować skrypty w graficznym środowisku okienkowym. Obsługuje edycję wielowierszową, kolorowanie składni, uzupełnianie za pomocą klawisza Tab, wykonywanie selektywne i wiele innych.

PowerShell ISE oferuje również panel konsoli, który umożliwia bezpośrednie uruchamianie poleceń, a panele boczne wyświetlają kod źródłowy skryptów i wszelkie narzędzia podłączone do ISE. Można otworzyć wiele okien skryptów jednocześnie — przydatne podczas debugowania skryptów zależnych od funkcji zdefiniowanych w innych skryptach lub modułach.

PowerShell ISE

Utwórz ponownie wcześniejszy skrypt w ISE:

  1. Wklej kod do edytora.
  2. Zapisz skrypt.
  3. Naciśnij F5, aby uruchomić.
  4. Obserwuj dane wyjściowe w panelu konsoli.

Uruchom skrypt w ISE

Próbka 2: poniższy skrypt wyświetla wolne pamięć wirtualna na maszynie.

Get-WmiObject -Class Win32_OperatingSystem -ComputerName localhost |
Select-Object -Property CSName, FreeVirtualMemory

Darmowy skrypt pamięci wirtualnej

PowerShell Concepts

Poniższe koncepcje stanowią podstawowe pojęcie codziennej pracy z programem PowerShell.

Pojęcie OPIS
polecenia cmdlet Wbudowane polecenia napisane w językach .NET, takich jak VB czy C#. Programiści rozszerzają zestaw, ładując lub pisząc przystawki programu PowerShell.
Funkcje Polecenia napisane w samym języku PowerShell, bez potrzeby korzystania ze środowiska IDE, takiego jak visual Studio.
Skrypty Pliki tekstowe na dysku z .ps1 rozbudowa.
Zastosowania Istniejący Windows programy wywoływane z powłoki.
Co jeśli Polecenie cmdlet, aby nie wykonywało się, ale opisuje, co się stanie, jeśli to nastąpi.
Potwierdzać Polecenie powoduje wyświetlenie monitu przez polecenie cmdlet przed wykonaniem.
Gadatliwy Zapewnia wyższy poziom szczegółowości operacyjnej.
Debug Polecenie cmdlet powoduje wysłanie informacji debugowania.
BłądAkcja Definiuje działanie polecenia cmdlet w przypadku błędu. Dozwolone wartości: continue, stop, silentlycontinue, inquire.
Zmienna błędu Nazywa zmienną przechowującą informacje o błędzie.
Zmienna zewnętrzna Polecenie cmdletu, aby zapisał dane wyjściowe w określonej zmiennej.
wyczerpaneBuffer Przechowuje określoną liczbę obiektów przed ich wysłaniem do potoku.

Zalety korzystania ze skryptów programu PowerShell

  • Skrypty programu PowerShell są wydajne i zwięzłe — można wiele osiągnąć zaledwie kilkoma linijkami tekstu.
  • Zmienne deklaruje się za pomocą $<variable> składnia.
  • Zmienne mogą przechowywać dane wyjściowe poleceń, obiekty i wartości pierwotne.
  • Typ zmiennej nie musi być określony jawnie.

PowerShell kontra wiersz poleceń

PowerShell Wiersz polecenia
Głęboko zintegrowany z WindowsOferuje interaktywną linię poleceń i pełny język skryptowy. Domyślny interfejs wiersza poleceń dostarczany przez MicrosoftProsta aplikacja Win32, która komunikuje się z innymi obiektami Win32.
Używa poleceń cmdlet, które można wywoływać interaktywnie lub za pomocą skryptów automatyzacji. Brak poleceń cmdlet.
Traktuje dane wyjściowe jako obiekty, dzięki czemu można je przekazać do innego polecenia cmdlet poprzez potok. Wynikiem jest zwykły strumień tekstu, a nie obiekty.
Zaawansowany pod względem funkcji, możliwości i architektury wewnętrznej. Podstawowa powłoka, przystosowana do starszych zadań wsadowych.

Zastosowania programu PowerShell

PowerShell stał się standardowym wyborem administratorów IT, ponieważ radykalnie zmniejsza nakład pracy w dużych sieciach korporacyjnych. Wyobraź sobie zarządzanie ponad czterystoma serwerami i wdrażanie nowego rozwiązania bezpieczeństwa, które opiera się na konkretnej usłudze działającej na każdym hoście.

Ręczne logowanie się do każdego serwera jest powolne i podatne na błędy. Pojedynczy skrypt programu PowerShell może w ciągu kilku minut przejrzeć każdy serwer, zgłosić, które hosty już korzystają z usługi, a nawet włączyć ją na pozostałych. Skrypt rejestruje intencję raz i niezawodnie stosuje ją w całej infrastrukturze.

FAQ

PowerShell automatyzuje Windows administrowanie systemem — zarządzanie usługami, plikami, użytkownikami i serwerami — za pomocą obiektowo zorientowanego wiersza poleceń i języka skryptowego zbudowanego na platformie .NET.

Polecenie cmdlet to lekki obiekt klasy .NET, który używa nazwy złożonej z czasownika i rzeczownika i zwraca obiekty. Tradycyjne polecenie w innych powłokach generuje zwykły tekst i samodzielnie obsługuje parsowanie i formatowanie.

PowerShell działa z obiektami i obsługuje polecenia cmdlet, skrypty oraz głęboką integrację z platformą .NET. Wiersz poleceń to podstawowa powłoka tekstowa, której polecenia generują zwykły tekst, a nie obiekty.

Plik .ps1 to skrypt programu PowerShell — plik tekstowy zawierający jedno lub więcej poleceń programu PowerShell. Domyślnie nie można go uruchomić dwukrotnym kliknięciem; wykonuje się go z konsoli lub za pomocą opcji Uruchom za pomocą programu PowerShell.

Otwórz program PowerShell jako administrator i uruchom polecenie Set-ExecutionPolicy z wartością taką jak RemoteSigned lub Unrestricted, a następnie potwierdź. Użyj polecenia Get-ExecutionPolicy, aby sprawdzić bieżące ustawienie.

Zintegrowane środowisko skryptowe (ISE) to wbudowany edytor graficzny programu PowerShell służący do pisania, uruchamiania, testowania i debugowania skryptów, z kolorowaniem składni, uzupełnianiem za pomocą klawisza Tab i wieloma kartami skryptów.

Asystenci AI sugerują polecenia cmdlet, objaśniają działanie skryptów i wykrywają błędy podczas pisania. Pomagają administratorom szybciej automatyzować zadania i konwertować żądania w języku angielskim na działające polecenia programu PowerShell.

Tak. Asystenci kodu AI generują kompletne skrypty programu PowerShell na podstawie opisu w prostym języku angielskim, takiego jak „wyświetl wszystkie zatrzymane usługi i uruchom je ponownie”, i wyjaśniają każde polecenie cmdlet, aby można je było przejrzeć przed uruchomieniem.

Podsumuj ten post następująco: