Microsoft anunció la disponibilidad para todos de PowerShell Core 6.0 el 10 de enero de 2018, pero realmente, ¿qué es PowerShell Core? y cual es la diferencia con Windows PowerShell.
PowerShell Core es una nueva versión de PowerShell, un shell de línea de comandos y lenguaje de scripts que se incluye con Microsoft Windows.
El lanzamiento de PowerShell Core aumenta la cantidad de ediciones de PowerShell a dos (2). Existe el PowerShell de hace una década que está integrado en todas las versiones recientes del sistema operativo Windows de Microsoft y el nuevo PowerShell Core.
1. PowerShell Core
Microsoft ve a PowerShell Core como una evolución de PowerShell. El primero está disponible como una aplicación multiplataforma, el último solo para Windows.
La naturaleza multiplataforma de PowerShell Core significa que las secuencias de comandos que escriba se ejecutarán en cualquier sistema operativo compatible. Puede escribir scripts de PowerShell Core en Windows y usarlos en dispositivos Mac OS X o Linux compatibles. Incluso hay versiones experimentales (no compatibles) para dispositivos ARM.
Microsoft trabaja activamente en PowerShell Core. PowerShell, por otro lado, se encuentra en un estado que se puede comparar mejor con el soporte extendido para las versiones de Windows. Microsoft no tiene planes de agregar funciones a PowerShell, pero lanzará correcciones de errores críticas y actualizaciones de seguridad.
Esto significa que el riesgo de regresión será muy bajo para Windows PowerShell, por lo que puede contar con él como una plataforma estable para sus cargas de trabajo existentes.
PowerShell Core se instala uno al lado del otro en Windows. En resumen: PowerShell Core no afecta a Windows PowerShell de ninguna manera en dispositivos con Windows.
2. PowerShell Core 6.0
PowerShell Core 6.0 no es tan poderoso como PowerShell 5.1. Una de las razones principales es que PowerShell tiene acceso a .NET Framework y .NET Standard; mientras que PowerShell Core a las características de .NET Core y .NET Standard.
Algunas tecnologías disponibles para Windows PowerShell no son compatibles con .NET Core. Microsoft señala que algunas de las tecnologías pueden regresar en versiones futuras, pero que este no será el caso para todas ellas.
La compañía menciona sobre PowerShell Workflows, complementos de PowerShell, cmdlets WMlv1 entre otras cosas, en el documento Breaking changes for PowerShell 6.0. Échele un vistazo para ver más detalles.
https://github.com/PowerShell/PowerShell/blob/master/docs/BREAKINGCHANGES.md
3. Diferencias entre PowerShell y PowerShell Core
PowerShell | PowerShell Core |
---|
. | PowerShell | PowerShell Core |
---|---|---|
Versiones | 1.0 a 5.1 | 6.0 |
Plataformas | Solo Windows (cliente y servidor) | Windows, Mac OS, Linux |
Dependencia | .NET Framework | .Net Core |
Uso | Se basa en el tiempo de ejecución de .Net Framework | Se basa en el tiempo de ejecución de .Net Core |
Lanzado como | powershell.exe | pwsh.exe (Windows), pwsh (Mac y Linux) |
$PSVersionTable.PSEdition | en Escritorio | en Core |
Políticas de Actualización | solo correcciones de errores críticos | todas las actualizaciones (características, errores) |
4. Descargas de PowerShell Core
PowerShell Core ha sido reemplazada por información más general sobre PowerShell 7. Ahora, los usuarios pueden acceder a las descargas de PowerShell 7, la versión principal y multiplataforma de PowerShell, que ofrece compatibilidad con una variedad de sistemas operativos. Los usuarios pueden encontrar las descargas de PowerShell 7 en el sitio web oficial de PowerShell, donde se proporcionan las últimas versiones y actualizaciones.