29Aug
Det kan være meget frustrerende, når din professor siger en ting om PowerShell, og forskellige websites synes at tilbyde solidt bevis på det modsatte. Fungerer PowerShell faktisk på ikke-Windows-systemer eller ej? Dagens SuperUser Q & A-indlæg har svaret på en forvirret læsers spørgsmål.
Dagens Spørgsmål &Svar session kommer til os høflighed af SuperUser-en underafdeling af Stack Exchange, en community-drevet gruppe af Q & A-websteder.
Spørgsmål
SuperUser-læser FredSavage187 ønsker at vide, om PowerShell fungerer på andre operativsystemer udover Windows:
Min computervidenskabsprofessor har for nylig givet os en quiz, og et af spørgsmålene var "True or False: PowerShell virker på Windows, Mac ogLinux”.Det korrekte svar var "falsk", og han hævder, at PowerShell er en eneste Windows-fil. Men jeg fandt et par hjemmesider, der siger ellers:
PowerShell er tilgængelig på Linux [Microsoft Azure Blog]
PowerShell Repository [GitHub]
Hvilken er faktisk korrekt? Fungerer PowerShell på Linux og Mac OS samt Windows?
arbejder PowerShell på andre operativsystemer ud over Windows?
Svaret
SuperUser-bidragyder Ben N har svaret for os:
Ja. Meget af PowerShell er. NET, så det kan køre på ethvert operativsystem, der har Common Language Runtime( CLR).På Windows, det er. NET Framework. For andre operativsystemer, herunder Linux, kan du bruge CoreCLR, en open source, underplatformsundergruppe af. NET Framework.
Som du har lært på PowerShell-depotet på GitHub, understøttes ganske få operativsystemer og distributioner. Her er f.eks. Instruktionerne til Ubuntu og en demonstration:
Man kan hævde, at ikke alle PowerShell er tilgængelige i ikke-Windows-miljøer, da nogle funktioner afhænger af biblioteker, der kun findes i Windows. ParsedHtml -ejendommen på HtmlWebResponseObject -typen returneret af Invoke-WebRequest er f.eks. Kun nyttig på Windows, fordi den har et COM-objekt, der kommer fra et ustyret bibliotek, mshtml.dll for at være specifik. På andre platforme er der intet der. Og selvfølgelig er der cmdletter til at håndtere systemer, der kun findes i Windows, som f.eks. Moderne apps( Get-AppxPackage , for eksempel).
PowerShell-infrastrukturen fungerer dog godt på andre operativsystemer, masser af cmdlets kan bruges overalt, og støtten bliver kun bedre.
Har du noget at tilføje til forklaringen? Lyde af i kommentarerne. Vil du læse flere svar fra andre tech-savvy Stack Exchange brugere? Tjek den fulde diskussionstråd her.
Billedkreditter: Jeff Hicks( Petri IT Knowledgebase)