Domača » kako » Ali PowerShell deluje na drugih operacijskih sistemih, razen Windows?

    Ali PowerShell deluje na drugih operacijskih sistemih, razen Windows?

    To je lahko zelo frustrirajuće, ko vaš profesor pravi, da ena stvar o PowerShell in različnih spletnih straneh se zdi, da ponujajo trdne dokaz za nasprotno. Ali PowerShell dejansko deluje na sistemih, ki niso Windows ali ne? Današnja postavka SuperUser Q&A ima odgovor na zmedeno vprašanje bralca.

    Današnja seja vprašanj in odgovorov prihaja z namenom SuperUser-a, ki je del skupine Stack Exchange, ki temelji na skupnostih spletnih mest za vprašanja in odgovore.

    Vprašanje

    Bralnik SuperUser FredSavage187 želi vedeti, ali PowerShell poleg operacijskega sistema Windows deluje tudi na drugih operacijskih sistemih:

    Moj profesor računalništva mi je pred kratkim dal kviz in eno od vprašanj je bilo: »Resnično ali neresnično: PowerShell deluje na Windows, Mac in Linux«. Pravilen odgovor je bil "neresničen" in trdi, da je PowerShell le Windows stvar. Vendar sem našel nekaj spletnih mest, ki pravijo drugače:

    PowerShell je odprt izvor in je na voljo v Linuxu [Microsoft Azure Blog]

    Skladišče PowerShell [GitHub]

    Kateri je pravilen? Ali PowerShell deluje v operacijskih sistemih Linux in Mac OS ter Windows?

    Ali PowerShell poleg operacijskega sistema Windows deluje tudi v drugih operacijskih sistemih?

    Odgovor

    Sodelavka SuperUser Ben N ima odgovor za nas:

    Da. Velik del PowerShell je .NET, zato se lahko izvaja v katerem koli operacijskem sistemu, ki ima skupno jezikovno izvajanje (CLR). V operacijskem sistemu Windows je to ogrodje .NET Framework. Za druge operacijske sisteme, vključno z Linuxom, lahko uporabite CoreCLR, odprtokodni podskupini platforme .NET Framework.

    Kot ste naučili v skladišču PowerShell na GitHubu, je podprtih kar nekaj operacijskih sistemov in distribucij. Tukaj so na primer navodila za Ubuntu in predstavitev:

    Lahko bi rekli, da v okolju, ki ni Windows, vse PowerShell ni na voljo, saj so nekatere funkcije odvisne od knjižnic, ki jih najdete samo v sistemu Windows. The ParsedHtml nepremičnine na HtmlWebResponseObject vrnil Invoke-WebRequest, na primer, je uporabno samo v sistemu Windows, ker ima objekt COM, ki prihaja iz neupravljane knjižnice, mshtml.dll biti specifični. Na drugih platformah ni ničesar. In seveda obstajajo cmdletki za upravljanje sistemov, ki jih najdete samo v sistemu Windows, kot so sodobne aplikacije (Get-AppxPackage, na primer).

    Kljub temu pa infrastruktura PowerShell odlično deluje v drugih operacijskih sistemih, veliko ukazov s kratkimi črtami je uporabnih kjerkoli in podpora se izboljšuje.


    Imate kaj dodati pojasnilu? Zvok v komentarjih. Želite prebrati več odgovorov drugih uporabnikov tehnologije Stack Exchange? Oglejte si celotno nit razprave tukaj.

    Image krediti: Jeff Hicks (Petri IT Knowledgebase)