Skip to content

Czy PowerShell działa na innych systemach operacyjnych oprócz Windows?

21 de lipiec de 2021
does powershell work on other operating systems besides windows 00 1024x469 1

To może być bardzo frustrujące, gdy twój profesor mówi jedno o PowerShell, a różne strony internetowe wydają się oferować solidny dowód, że jest inaczej. Czy PowerShell faktycznie działa w systemach innych niż Windows, czy nie? Dzisiejszy post z pytaniami i odpowiedziami dla SuperUser zawiera odpowiedź na pytanie zdziwionego czytelnika.

Dzisiejsza sesja pytań i odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser — pododdziału Stack Exchange, społecznościowej grupy witryn internetowych z pytaniami i odpowiedziami.

Pytanie

Czytnik SuperUser FredSavage187 chce wiedzieć, czy PowerShell działa na innych systemach operacyjnych oprócz Windows:

Mój profesor informatyki niedawno dał nam quiz i jedno z pytań brzmiało: „Prawda czy fałsz: PowerShell działa na systemach Windows, Mac i Linux”. Prawidłowa odpowiedź brzmiała „fałsz” i utrzymuje, że PowerShell to tylko rzecz Windows. Ale znalazłem kilka stron internetowych, które mówią inaczej:

PowerShell jest oprogramowaniem typu open source i jest dostępny w systemie Linux [Microsoft Azure Blog]

Repozytorium PowerShell [GitHub]

Która jest właściwie poprawna? Czy PowerShell działa w systemach Linux i Mac OS oraz Windows?

Czy PowerShell działa na innych systemach operacyjnych oprócz Windows?

Odpowiedź

Współtwórca SuperUser Ben N ma dla nas odpowiedź:

Tak. Duża część programu PowerShell to platforma .NET, więc może działać w dowolnym systemie operacyjnym, który ma środowisko uruchomieniowe języka wspólnego (CLR). W systemie Windows jest to .NET Framework. W przypadku innych systemów operacyjnych, w tym Linux, możesz użyć CoreCLR, wieloplatformowy podzbiór typu open source platformy .NET Framework.

Jak dowiedziałeś się w repozytorium PowerShell na GitHub, obsługiwanych jest sporo systemów operacyjnych i dystrybucji. Na przykład, oto instrukcje dla Ubuntu i demonstracja:

1626871782 940 Czy PowerShell dziala na innych systemach operacyjnych oprocz Windows

Można argumentować, że nie cały PowerShell jest dostępny w środowiskach innych niż Windows, ponieważ niektóre funkcje zależą od bibliotek znalezionych tylko w systemie Windows. ParsedHtml nieruchomość na HtmlWebResponseObject typ zwrócony przez Invoke-WebRequest, na przykład jest przydatny tylko w systemie Windows, ponieważ zawiera obiekt COM pochodzący z biblioteki niezarządzanej, mshtml.dll być konkretnym. Na innych platformach nic tam nie ma. I oczywiście istnieją polecenia cmdlet do zarządzania systemami występującymi tylko w systemie Windows, takimi jak Nowoczesne aplikacje (Get-AppxPackage, na przykład).

Mimo to infrastruktura PowerShell działa doskonale na innych systemach operacyjnych, wiele poleceń cmdlet można używać w dowolnym miejscu, a wsparcie jest coraz lepsze.

Masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych doświadczonych technologicznie użytkowników Stack Exchange? Sprawdź pełny wątek dyskusji tutaj.

Kredyty obrazkowe: Jeff Hicks (Baza wiedzy Petriego IT)

Czy ten post był pomocny?