![]() Logo programu | |
![]() Zrzut ekranu Windows PowerShell 7.1.5 w Windows Terminal | |
Autor | Microsoft |
---|---|
Pierwsze wydanie | 14 listopada 2006 |
Aktualna wersja stabilna | 7.5.0 (23 stycznia 2025) [±] |
Platforma sprzętowa | x86, x64, ARM |
System operacyjny | Windows: 10, 11, Server 2016, Server 2019, Server 2022; Linux, Mac OS X |
Rodzaj | interpreter poleceń |
Licencja | MIT |
Strona internetowa |
PowerShell (poprzednio Windows PowerShell, Microsoft Shell lub MSH, nazwa kodowa Monad) – interpreter poleceń opracowany przez firmę Microsoft. Początkowo był to składnik systemu Windows, znany jako Windows PowerShell. Wraz z wprowadzeniem PowerShell Core jest to oprogramowanie wieloplatformowe oraz open-source[1][2][3].
Jest znacznie bardziej rozbudowany w stosunku do wcześniejszych interpreterów COMMAND.COM i cmd.exe, stosowanych w systemach operacyjnych MS-DOS i Microsoft Windows. PowerShell został wydany w 2006 roku i jest dostępny dla Windows XP SP2, Windows Server 2003 i nowszych oraz Linux i OS X. Jest wbudowany w Microsoft Windows Server 2008 i Microsoft Windows Server 2012 jako cecha opcjonalna (nie instalowana automatycznie).
PowerShell jest zintegrowany z .NET Framework i dostarcza środowisko do wykonywania zadań administracyjnych wykonywanych poleceniami cmdlets
.
Od 2008 roku, common criteria (lista warunków, które muszą zostać spełnione) dla wszystkich produktów serwerowych Microsoft zawiera zarządzanie przez PowerShell. Oznacza to, że przy pomocy interpretera poleceń wykonać można każde działanie administracyjne na każdym współczesnym produkcie. Dzięki temu znacząco ujednolica i upraszcza się skryptowe zarządzanie środowiskiem.
Charakterystyczną cechą PowerShell, odróżniającą go od innych interpreterów poleceń, jest logika obiektowa. Wynikiem każdego polecenia nie jest ciąg znaków na ekranie, ale obiekt określonego typu. W przypadku braku wskazania, co z danym obiektem należy zrobić, część jego właściwości wyświetlana jest na ekranie. Możliwe jest jednak bardziej zaawansowane wykorzystanie metod i właściwości zwróconego obiektu. Przykładowo polecenie Get-ChildItem
(lub jego alias dir
albo ls
) zwraca listę plików i katalogów w bieżącej lokalizacji. Z otrzymanej przez
listy, widać jednak, że można łatwo zastosować metodę Get-ChildItem | Get-Member
Delete
, bądź sięgnąć do właściwości LastAccessTime
czy Attributes
.
Każda funkcja dostępna przez API systemu jest możliwa do wywołania z PowerShell. Oznacza to, że nie ma takiej opcji związanej z zarządzaniem systemem, której nie dałoby się wykonać poprzez skrypt PowerShell.