Kas PowerShell töötab teiste operatsioonisüsteemidega peale Windowsi?
See võib olla väga masendav, kui teie professor ütleb, et üks asi PowerShelli ja erinevate veebisaitide puhul näib olevat vastupidine. Kas PowerShell tegelikult töötab mitte-Windowsi süsteemides või mitte? Tänase SuperUser Q&A postitusel on vastus arusaamatu lugeja küsimusele.
Tänane küsimuste ja vastuste seanss saabub meiega kohtades, kus on SuperUser-Stack Exchange'i alajaotis, kogukondlikult juhitav Q&A veebisaitide rühmitus.
Küsimus
SuperUser-lugeja FredSavage187 tahab teada, kas PowerShell töötab lisaks Windowsile ka teistes operatsioonisüsteemides:
Minu arvutiteaduse professor andis hiljuti meile viktoriini ja üks nendest küsimustest oli: “Tõsi või vale: PowerShell töötab Windowsis, Macis ja Linuxis”. Õige vastus oli "vale" ja ta väidab, et PowerShell on ainus Windowsi asi. Kuid ma leidsin paar veebilehte, mis ütlevad teisiti:
PowerShell on avatud ja on saadaval Linuxis [Microsoft Azure Blog]
PowerShelli hoidla [GitHub]
Milline neist on õige? Kas PowerShell töötab Linuxis ja Mac OS-is ning Windowsis?
Kas PowerShell töötab lisaks Windowsile ka teistes operatsioonisüsteemides?
Vastus
SuperUser'i toetaja Ben N on meile vastus:
Jah. Suur osa PowerShellist on .NET, nii et see võib töötada mis tahes operatsioonisüsteemis, millel on Common Language Runtime (CLR). Windowsis. See on .NET Framework. Teiste operatsioonisüsteemide, sealhulgas Linuxi puhul saate kasutada CoreCLR-i, avatud lähtekoodiga, platvormi interaktiivset alamhulka .NET Framework.
Nagu GitHubi PowerShelli hoidlas õppisite, toetatakse üsna vähe operatsioonisüsteeme ja jaotusi. Näiteks on siin Ubuntu juhiseid ja tutvustust:
Võib väita, et mitte kõik PowerShell on saadaval mitte-Windowsi keskkondades, kuna mõned funktsioonid sõltuvad ainult Windowsis leiduvatest raamatukogudest. The ParsedHtml vara HtmlWebResponseObject tüüp tagasi Invoke-WebRequest, Näiteks on see kasulik ainult Windowsis, sest tal on COM-objekt, mis pärineb haldamata raamatukogust, mshtml.dll olema konkreetne. Teistel platvormidel ei ole seal midagi. Ja muidugi on olemas ainult cmdletid, mis haldavad ainult Windowsis leiduvaid süsteeme, nagu kaasaegsed rakendused (Get-AppxPackage, näiteks).
Siiski töötab PowerShelli infrastruktuur suurepäraselt ka teistes operatsioonisüsteemides, paljud cmdletid on kasutatavad kõikjal ja tugi paraneb ainult.
Kas teil on midagi lisada selgitusele? Heli on kommentaarides välja lülitatud. Kas soovite lugeda rohkem vastuseid teistelt tech-savvy Stack Exchange'i kasutajatelt? Vaadake siin täielikku arutelu lõiku.
Pildi autorid: Jeff Hicks (Petri IT teadmistebaas)