Se voi olla hyvin turhauttavaa, kun professori kertoo PowerShellistä ja eri verkkosivustoista näyttävät tarjoavan vankka todiste päinvastoin. Käyttääkö PowerShell muissa kuin Windows-järjestelmissä vai ei? Tänään SuperUser Q & A -postilla on vastaus hämmentynyt lukijan kysymykseen.
Tämän päivän kysymys- ja vastausistunto tulee meihin SuperUserin hyväksi - Stack Exchangein alaosasto, joka on yhteisöllinen Q & A-sivustojen ryhmittely.
SuperUser-lukija FredSavage187 haluaa tietää, toimiiko PowerShell muissa käyttöjärjestelmissä Windowsin lisäksi:
Tietojenkäsittelytieteen professori äskettäin antoi meille tietokilpailun ja yksi kysymyksistä oli "True or False: PowerShell toimii Windowsissa, Macissa ja Linuxissa". Oikea vastaus oli "epätosi" ja hän väittää, että PowerShell on Windows vain asia. Mutta löysin muutamia verkkosivustoja, jotka sanovat toisin:
PowerShell on avoin lähdekoodi ja se on saatavilla Linuxissa [Microsoft Azure Blog]
PowerShell-arkisto [GitHub]
Kumpi oikein on oikein? Onko PowerShell toimiva Linuxissa, Mac OS: ssä ja Windowsissa?
Does PowerShell toimivat Windows-käyttöjärjestelmän lisäksi?
SuperUser-avustaja Ben N: llä on vastaus meille:
Joo. Suuri osa PowerShellistä on .NET, joten se voi toimia millä tahansa käyttöjärjestelmällä, jolla on Common Language Runtime (CLR). Windowsissa, eli .NET Frameworkissä. Muissa käyttöjärjestelmissä, kuten Linuxissa, voit käyttää .NET Framework -puhelimen avoimen lähdekoodin, cross-platform-alihakemistoa.
Kuten olet oppinut GitHubin PowerShell-arkistossa, tuetaan useita käyttöjärjestelmiä ja jakeluja. Esimerkiksi tässä ovat Ubuntun ohjeet ja esittely:
Voidaan väittää, että PowerShell ei ole käytettävissä kaikissa muissa kuin Windows-ympäristöissä, koska jotkin ominaisuudet riippuvat vain Windowsissa olevista kirjastoista. ParsedHtml omaisuus HtmlWebResponseObject tyyppi palautettu Invoke-WebRequest, on hyödyllinen vain Windowsissa, koska sillä on COM-objekti, joka on peräisin hallitsemattomasta kirjastosta, mshtml.dll olla erityisiä. Muilla alustoilla ei ole mitään. Ja tietenkin on olemassa cmdletit järjestelmien hallitsemiseksi vain Windowsissa, kuten Modern-sovellukset (Get-AppxPackage, esimerkiksi).
Silti PowerShell-infrastruktuuri toimii täydellisesti muiden käyttöjärjestelmien kanssa, runsaasti cmdletteja on käytettävissä missä tahansa, ja tuki vain paranee.
Onko jokin asia lisättävä selitykseen? Kuulkaa kommentit. Haluatko lukea lisää vastauksia muilta tech-tajuilta Stack Exchange-käyttäjiltä? Katso koko keskusteluketju täältä.
Image Credits: Jeff Hicks (Petri IT-tietopankki)