
Het kan heel frustrerend zijn als uw professor iets zegt over PowerShell en verschillende websites een solide bewijs van het tegendeel lijken te bieden. Werkt PowerShell eigenlijk op niet-Windows-systemen of niet? De SuperUser Q & A-post van vandaag biedt het antwoord op de vraag van een verbaasde lezer.
De Question & Answer-sessie van vandaag komt tot ons dankzij SuperUser - een onderdeel van Stack Exchange, een door de gemeenschap gestuurde groep van Q & A-websites.
SuperUser-lezer FredSavage187 wil weten of PowerShell naast Windows werkt op andere besturingssystemen:
Mijn professor in informatica heeft ons onlangs een quiz gegeven en een van de vragen was: "Waar of niet waar: PowerShell werkt op Windows, Mac en Linux”. Het juiste antwoord was "false" en hij beweert dat PowerShell een Windows-ding is. Maar ik heb een aantal websites gevonden die iets anders zeggen:
PowerShell is open source en beschikbaar op Linux [Microsoft Azure Blog]
PowerShell Repository [GitHub]
Welke is eigenlijk juist? Werkt PowerShell zowel op Linux en Mac OS als op Windows?
Werkt PowerShell naast Windows ook op andere besturingssystemen?
SuperUser-bijdrager Ben N heeft het antwoord voor ons:
Ja. Een groot deel van PowerShell is .NET, dus het kan worden uitgevoerd op elk besturingssysteem met de Common Language Runtime (CLR). In Windows is dat het .NET Framework. Voor andere besturingssystemen, waaronder Linux, kunt u de CoreCLR gebruiken, een open-source, cross-platform subset van het .NET Framework.
Zoals u hebt geleerd in de PowerShell-repository op GitHub, zijn nogal wat besturingssystemen en distributies ondersteund. Hier volgen bijvoorbeeld de instructies voor Ubuntu en een demonstratie:
Men zou kunnen beweren dat niet alle PowerShell beschikbaar zijn in niet-Windows-omgevingen omdat sommige functies afhankelijk zijn van bibliotheken die alleen in Windows worden gevonden. De eigenschap ParsedHtml op het type HtmlWebResponseObject geretourneerd door Invoke-WebRequest is bijvoorbeeld alleen nuttig op Windows omdat het een COM-object bevat dat afkomstig is van een niet-beheerd object bibliotheek, mshtml.dll specifiek te zijn. Op andere platforms is er niets. En natuurlijk zijn er cmdlets om systemen te beheren die alleen in Windows worden gevonden, zoals moderne apps ( Get-AppxPackage , bijvoorbeeld).
Toch werkt de PowerShell-infrastructuur uitstekend op andere besturingssystemen , veel cmdlets kunnen overal worden gebruikt en de ondersteuning wordt alleen maar beter.
Heeft u iets toe te voegen aan de uitleg? Geluid uit in de reacties. Wilt u meer antwoorden van andere technisch onderlegde Stack Exchange-gebruikers lezen? Bekijk de volledige discussiethread hier.
Afbeeldingcredits: Jeff Hicks (Petri IT Knowledgebase)
Hoe beslist Windows welke van twee bestanden met identieke tijdstempels nieuwer is?
Wat betekent het als u twee identieke bestanden met dezelfde tijdstempels hebt, maar Windows zegt dat één bestand nieuwer is dan de andere? Hoe kan dat zijn? De SuperUser Q & A-post van vandaag helpt een verwarde lezer om een tijdstempelmysterie op te lossen. De Question & Answer-sessie van vandaag komt tot ons dankzij SuperUser - een onderdeel van Stack Exchange, een door de gemeenschap gestuurde groep van Q & A-websites.
Meerdere pc's bedienen met één toetsenbord Synergy gebruiken
Als u meerdere Windows-machines op uw bureau gebruikt, bent u waarschijnlijk moe van het wisselen tussen toetsenborden en muizen. Er zijn hardware-oplossingen: KVM-switches, die gebruikmaken van meerdere in- en uitgangen om fysieke muizen en toetsenborden te delen. Synergy, een programma dat hetzelfde doet via een netwerk, is een elegantere oplossing en het werkt met Windows, MacOS en Linux.