29Aug

Funktioniert PowerShell neben Windows auf anderen Betriebssystemen?

click fraud protection

Es kann sehr frustrierend sein, wenn Ihr Professor etwas über PowerShell sagt und verschiedene Websites den Beweis für das Gegenteil liefern. Arbeitet PowerShell tatsächlich auf Nicht-Windows-Systemen oder nicht? Der heutige SuperUser Q & A Post hat die Antwort auf die Frage eines verwirrten Lesers.

Die heutige Frage &Die Antwortsitzung kommt dank SuperUser, einer Unterteilung von Stack Exchange, einer Community-gesteuerten Gruppierung von Q & A-Websites, zu uns.

Die Frage

SuperUser Reader FredSavage187 möchte wissen, ob PowerShell auch auf anderen Betriebssystemen als Windows funktioniert:

Mein Informatikprofessor hat uns kürzlich ein Quiz gegeben und eine der Fragen lautete: "Richtig oder falsch: PowerShell funktioniert unter Windows, Mac undLinux ".Die richtige Antwort war "falsch" und er behauptet, dass PowerShell eine Windows-Sache ist. Aber ich habe ein paar Webseiten gefunden, die etwas anderes sagen:

PowerShell ist Open Source und steht unter Linux zur Verfügung [Microsoft Azure Blog]

instagram viewer

PowerShell Repository [GitHub]

Welches ist eigentlich richtig? Arbeitet PowerShell sowohl unter Linux als auch unter Mac OS und Windows?

Arbeitet PowerShell auf anderen Betriebssystemen als Windows?

Die Antwort

SuperUser Mitwirkender Ben N hat die Antwort für uns:

Ja. Ein Großteil von PowerShell ist. NET und kann daher auf jedem Betriebssystem mit der Common Language Runtime( CLR) ausgeführt werden. Unter Windows ist dies das. NET Framework. Für andere Betriebssysteme, einschließlich Linux, können Sie CoreCLR verwenden, eine quelloffene plattformübergreifende Teilmenge von. NET Framework.

Wie Sie im PowerShell-Repository auf GitHub erfahren haben, werden einige Betriebssysteme und Distributionen unterstützt. Hier sind beispielsweise die Anweisungen für Ubuntu und eine Demonstration:

Man könnte argumentieren, dass nicht alle PowerShell in Nicht-Windows-Umgebungen verfügbar ist, da einige Funktionen von Bibliotheken abhängen, die nur in Windows gefunden werden. Die -Eigenschaft ParsedHtml auf dem -Typ HtmlWebResponseObject , die von Invoke-WebRequest zurückgegeben wird, ist beispielsweise nur unter Windows nützlich, da sie ein COM-Objekt aus einer nicht verwalteten Bibliothek mshtml.dll enthält. Auf anderen Plattformen gibt es nichts. Und natürlich gibt es Cmdlets, um Systeme zu verwalten, die nur in Windows gefunden werden, wie moderne Apps( Get-AppxPackage , zum Beispiel).

Dennoch funktioniert die PowerShell-Infrastruktur auf anderen Betriebssystemen einwandfrei, viele Cmdlets sind überall einsetzbar und die Unterstützung wird nur besser.

Haben Sie etwas zur Erklärung hinzuzufügen? Ton in den Kommentaren ab. Möchten Sie mehr Antworten von anderen technisch versierten Stack Exchange Benutzern lesen? Sehen Sie sich den vollständigen Diskussionsfaden hier an.

Bildnachweis: Jeff Hicks( Petri IT Wissensdatenbank)