Puede ser muy frustrante cuando su profesor dice algo sobre PowerShell y varios sitios web parecen ofrecer pruebas sólidas de lo contrario. ¿PowerShell realmente funciona en sistemas que no son Windows o no? La publicación de preguntas y respuestas del superusuario de hoy tiene la respuesta a la pregunta de un lector desconcertado.
La sesión de preguntas y respuestas de hoy nos llega por cortesía de SuperUser, una subdivisión de Stack Exchange, un grupo de sitios web de preguntas y respuestas impulsado por la comunidad.
El lector de superusuario FredSavage187 quiere saber si PowerShell funciona en otros sistemas operativos además de Windows:
Mi profesor de ciencias de la computación nos dio recientemente un cuestionario y una de las preguntas fue, «Verdadero o falso: PowerShell funciona en Windows, Mac y Linux». La respuesta correcta fue “falsa” y sostiene que PowerShell es algo exclusivo de Windows. Pero encontré un par de sitios web que dicen lo contrario:
PowerShell es de código abierto y está disponible en Linux [Blog de Microsoft Azure]
Repositorio de PowerShell [GitHub]
¿Cuál es realmente la correcta? ¿PowerShell funciona en Linux y Mac OS, así como en Windows?
¿PowerShell funciona en otros sistemas operativos además de Windows?
El colaborador de superusuario Ben N tiene la respuesta para nosotros:
Si. Gran parte de PowerShell es .NET, por lo que puede ejecutarse en cualquier sistema operativo que tenga Common Language Runtime (CLR). En Windows, ese es .NET Framework. Para otros sistemas operativos, incluido Linux, puede usar CoreCLR , un subconjunto multiplataforma de código abierto de .NET Framework.
Como aprendió en el repositorio de PowerShell en GitHub, se admiten bastantes sistemas operativos y distribuciones. Por ejemplo, aquí están las instrucciones para Ubuntu y una demostración :
Se podría argumentar que no todo PowerShell está disponible en entornos que no son de Windows, ya que algunas características dependen de bibliotecas que solo se encuentran en Windows. La propiedad ParsedHtml en el tipo HtmlWebResponseObject devuelto por Invoke-WebRequest , por ejemplo, solo es útil en Windows porque contiene un objeto COM que proviene de una biblioteca no administrada, mshtml.dll para ser específico. En otras plataformas, no hay nada ahí. Y, por supuesto, existen cmdlets para administrar sistemas que solo se encuentran en Windows, como las aplicaciones modernas ( Get-AppxPackage , por ejemplo).
Sin embargo, la infraestructura de PowerShell funciona perfectamente bien en otros sistemas operativos, muchos de los cmdlets se pueden usar en cualquier lugar y el soporte solo está mejorando.
¿Tiene algo que agregar a la explicación? Habla en los comentarios. ¿Quieres leer más respuestas de otros usuarios de Stack Exchange expertos en tecnología? Consulte el hilo de discusión completo aquí .
Créditos de imagen: Jeff Hicks (Petri IT Knowledgebase)
El mundo del gaming ha experimentado un crecimiento exponencial en los últimos años. La…
Stokkete/Shutterstock.com ¿Sigue utilizando una unidad flash USB obsoleta para almacenar sus archivos? ¿Por qué no…
LG Los fabricantes siempre intentan mejorar el rendimiento de imagen de los monitores. Como resultado,…
Patty Chan/Shutterstock.com Si cree en lo que ve en las redes sociales, puede pensar en…
Seksan.TH/Shutterstock.com Los servicios de suscripción como Netflix, Game Pass y Spotify nos permiten consumir tantas…
fatmawati achmad zaenuri/Shutterstock El acceso a Internet, oa cualquier otra red, se rige por la…