PowerShell Core abre el camino a un enfoque más flexible y moderno de la automatización en Windows. El PowerShell tradicional es conocido por muchos, pero sus capacidades están limitadas al entorno clásico de Windows. La nueva versión multiplataforma ofrece acceso a herramientas y scripts que funcionan de forma efectiva en Windows, Linux, macOS y entornos en la nube.
La herramienta facilita en gran medida el trabajo de administradores de sistemas, ingenieros DevOps y desarrolladores: las tareas rutinarias se automatizan con facilidad y los scripts de PowerShell se integran sin problemas en pipelines de CI/CD. Las ventajas clave son la compatibilidad ampliada, el soporte activo de la comunidad, la variedad de módulos disponibles y las actualizaciones periódicas. Si desea acelerar los procesos diarios y pasar a una automatización más flexible, PowerShell Core será un excelente complemento para su conjunto de herramientas.
¿Qué es PowerShell Core?
PowerShell Core es la versión multiplataforma de PowerShell, desarrollada sobre .NET Core. Permite ejecutar scripts no solo en Windows, sino también en otros sistemas operativos, incluidos Linux y macOS. A diferencia del PowerShell estándar, que se basa en .NET Framework y está limitado al entorno Windows, PowerShell Core ofrece mayores posibilidades de interoperabilidad, integración y compatibilidad con la comunidad de código abierto. Por ello, muchos consideran PowerShell Core como una herramienta para desarrolladores que simplifica la automatización y permite escribir scripts flexibles que funcionan en distintos entornos.
Antes de proceder con la instalación, es importante entender que el PowerShell estándar y PowerShell Core pueden coexistir en la misma máquina. Esto significa que puede usar ambas versiones sin problema. PowerShell Core suele llevar números de versión que comienzan por 7 (por ejemplo, 7.x.x) y un icono de color más oscuro para distinguirlo visualmente de la versión estándar.
Preparación para la instalación
Antes de instalar PowerShell Core en Windows, debe asegurarse de que el sistema esté actualizado y determinar qué método de instalación es el más adecuado. Hay varias opciones disponibles: descargar el paquete MSI, instalar desde Microsoft Store, usar un gestor de paquetes (Winget, Chocolatey, PowerShellGet) o incluso instalar desde el repositorio de GitHub.
Se recomienda comprobar la compatibilidad de su versión de Windows con PowerShell Core. En general, PowerShell Core 7 y versiones posteriores son compatibles con Windows 8.1, Windows 10, Windows 11 y con las versiones correspondientes de Windows Server. Si usa un sistema obsoleto, es posible que algunos comandos o funciones no funcionen como se espera.
- Asegúrese de que tiene acceso a Internet para descargar los archivos necesarios.
- Tenga privilegios de administrador para instalar o actualizar aplicaciones en el sistema.
- Considere usar un gestor de paquetes si planea automatizar la instalación en varias máquinas.
Con estos detalles claros, puede pasar a la parte práctica e instalar PowerShell Core.
Instalación de PowerShell Core
Existen varios métodos para instalar PowerShell Core en un entorno Windows. Cada opción tiene sus ventajas. A continuación se presentan los métodos más populares con una descripción paso a paso de cada uno.
Instalación mediante paquete MSI
Este método se considera uno de los más sencillos y familiares para quienes trabajan con instaladores MSI en Windows.
- Visite el repositorio oficial de PowerShell Core en GitHub, donde se publican las versiones más recientes.
- Busque la última versión estable y, en la lista de archivos de instalación, seleccione el paquete MSI para Windows (x64 o x86 según su sistema).
- Guarde el instalador y ejecútelo. Si es necesario, confirme la solicitud de UAC (Control de cuentas de usuario).
- Siga las instrucciones del asistente de instalación. Puede elegir la configuración predeterminada o especificar una ruta personalizada.
- Espere a que finalice la instalación. Después de esto, aparecerá un acceso directo a PowerShell 7 (o a la versión que haya instalado) en el menú «Inicio».
Instalación desde Microsoft Store
Si prefiere una instalación y actualización simplificadas desde el centro de Microsoft, puede instalar PowerShell Core directamente desde Microsoft Store (relevante para Windows 10 y 11). Esto permite recibir actualizaciones automáticas.
- Abra Microsoft Store en su equipo.
- En el campo de búsqueda, escriba «PowerShell» y seleccione «PowerShell» de Microsoft.
- Haga clic en el botón «Obtener» y espere a que finalice la instalación.
- La nueva versión de PowerShell aparecerá en el menú «Inicio» como «PowerShell» con la indicación «7» o superior.
Instalación mediante el gestor de paquetes Winget
Winget es un gestor de paquetes que facilita la instalación de distintas aplicaciones en Windows.
- Asegúrese de que Winget esté instalado (normalmente está disponible por defecto en las versiones recientes de Windows 10 y Windows 11).
- Abra PowerShell o CMD con privilegios de administrador.
- Introduzca el comando: winget install Microsoft.PowerShell. Espere a que termine el proceso.
- Tras completar la instalación, compruebe que PowerShell Core aparece en la lista de aplicaciones.
Instalación mediante Chocolatey
Chocolatey es otro gestor de paquetes popular para Windows. Si ya lo tiene instalado, la instalación de PowerShell Core se reduce a una sola línea.
- Ejecute PowerShell o CMD como administrador.
- Ejecute el comando: choco install powershell-core -y.
- Una vez finalizada la instalación, verifique que el acceso directo a PowerShell 7 aparece en el menú «Inicio».
Instalación desde el repositorio de Microsoft (para entornos corporativos)
En algunos casos, las políticas corporativas restringen el acceso a recursos externos. Microsoft ofrece repositorios propios para que los administradores puedan desplegar PowerShell Core dentro de la organización con un esfuerzo mínimo.
Las instrucciones detalladas están disponibles en la documentación oficial en Microsoft Docs. La instalación se realiza mediante comandos compatibles con su repositorio local (por ejemplo, WSUS o SCCM).
Primeros pasos de configuración
Tras instalar PowerShell Core en Windows, es importante realizar una configuración básica para que el entorno sea cómodo y funcional. Esto incluye configurar perfiles, permisos de ejecución de scripts, ajustar la fuente en la consola y otros aspectos que facilitan el trabajo diario.
Configurar la política ExecutionPolicy
Windows puede bloquear por defecto la ejecución de scripts sin firma para proteger contra código malicioso. Para cambiar este comportamiento, puede ajustar la ExecutionPolicy.
- Abra PowerShell Core como administrador.
- Ejecute el comando: Set-ExecutionPolicy RemoteSigned.
- Confirme su decisión siguiendo las indicaciones en pantalla.
El parámetro RemoteSigned permite ejecutar scripts locales sin firma, pero requiere firma para archivos descargados de Internet.
Crear y editar el perfil
PowerShell Core admite el concepto de perfiles: son scripts especiales que se ejecutan al iniciar cada sesión. Ayudan a configurar automáticamente el entorno, cargar los módulos necesarios y definir alias personalizados.
- Conozca la ruta del perfil ejecutando: $PROFILE.
- Si el archivo no existe, créelo (normalmente es un archivo con extensión .ps1).
- Abra el archivo en un editor de texto, agregue sus ajustes y guarde.
- Reinicie PowerShell Core para que los cambios surtan efecto.
Por ejemplo, en el perfil puede añadir comandos para cargar módulos de uso frecuente o establecer un alias para una utilidad habitual. Esto ahorrará tiempo en el futuro.
Modificar la apariencia de la consola
PowerShell Core suele ejecutarse en una consola multiplataforma nueva, pero puede usar Windows Terminal u otra consola de su preferencia. Para cambiar la fuente, los colores y otros elementos visuales, use las opciones de la propia consola. Si trabaja con Windows Terminal, su configuración se puede localizar y editar seleccionando el perfil correspondiente a PowerShell Core.
Funciones avanzadas y complementos
Una de las principales ventajas de PowerShell Core es su amplia ecosistema de módulos y complementos. Los desarrolladores pueden añadir soluciones para trabajar con servicios en la nube, bases de datos e instrumentos de CI/CD. A continuación se enumeran algunos módulos populares que pueden ser útiles en la actividad diaria.
PowerShellGet y gestión de módulos
PowerShellGet es el módulo oficial que permite buscar, instalar, actualizar y eliminar otros módulos. Funciona con PowerShell Gallery, el mayor repositorio oficial de módulos para PowerShell.
- Busque módulos con el comando: Find-Module ModuleName.
- Instale módulos con el comando: Install-Module ModuleName.
- Actualice módulos con el comando: Update-Module ModuleName.
Con PowerShellGet puede añadir multitud de funcionalidades útiles, por ejemplo módulos para trabajar con Azure, AWS, Docker o Kubernetes, ampliando PowerShell Core hasta convertirlo en una herramienta DevOps completa.
PSReadLine para mejorar la edición de comandos
El módulo PSReadLine proporciona una edición de comandos más cómoda directamente en la consola, resaltando la sintaxis, guardando el historial de sesiones y permitiendo navegar por él con combinaciones de teclas. Gran parte de esta funcionalidad ya está incluida por defecto en las versiones recientes de PowerShell Core, pero a veces conviene comprobar la vigencia del módulo ejecutando: Install-Module PSReadLine -Force.
Oh-My-Posh y personalización del perfil
Si desea decorar la consola y facilitar su trabajo, puede usar Oh-My-Posh. Esta herramienta muestra un prompt con información como la rama de Git, el estado del repositorio, el entorno de Python y mucho más. Es especialmente útil para desarrolladores que cambian frecuentemente entre proyectos.
Consejos para la integración con otras herramientas
PowerShell Core puede convertirse en el núcleo de su ecosistema de automatización. A continuación se ofrecen algunas ideas sobre cómo integrarlo con herramientas y servicios populares.
Uso en scripts de CI/CD
Muchos sistemas de integración y entrega continua (CI/CD) permiten ejecutar comandos en distintas plataformas. PowerShell Core, al ser multiplataforma, puede ser una herramienta universal conveniente. Añada los pasos correspondientes en su archivo YAML de GitHub Actions o GitLab CI para ejecutar automáticamente scripts de PowerShell durante la compilación del proyecto.
Automatización con Azure DevOps
Azure DevOps se integra estrechamente con PowerShell, permitiendo configurar pipelines que ejecutan comandos durante el despliegue. Instale los módulos de Azure necesarios en PowerShell Core y conéctese a los recursos en la nube mediante comandos como Connect-AzAccount.
Integración con Visual Studio Code
Visual Studio Code es el IDE preferido de muchos desarrolladores y cuenta con una excelente extensión para PowerShell. Instale la extensión PowerShell en VS Code para obtener resaltado de sintaxis, depuración y sugerencias de código.
- Abra VS Code y vaya a Extensiones.
- Busque «PowerShell» e instale la extensión oficial.
- Reinicie VS Code para activar todas las funciones.
A partir de entonces podrá escribir scripts de PowerShell Core directamente en VS Code y ejecutarlos usando el terminal integrado o la función de depuración.
Recomendaciones de seguridad
La automatización y la comodidad son excelentes, pero no conviene olvidar la seguridad. PowerShell Core, como cualquier entorno de ejecución de scripts, puede ser objetivo de actores maliciosos, por lo que es necesario seguir reglas básicas de protección y prevención.
- Use scripts firmados. Para entornos corporativos y tareas críticas, es aconsejable verificar la autenticidad de los scripts mediante firma digital.
- Configure adecuadamente la ExecutionPolicy. Si la organización tiene políticas estrictas, asegúrese de seleccionar un nivel de protección adecuado (RemoteSigned, AllSigned, etc.).
- Actualice PowerShell Core. Cada actualización corrige vulnerabilidades potenciales y mejora el rendimiento. Si se instaló mediante Microsoft Store o Winget, las actualizaciones pueden ser automáticas. En caso contrario, conviene comprobar las nuevas versiones en GitHub.
- Use antivirus y políticas del sistema. Es un consejo general, pero especialmente importante cuando se trata de herramientas de automatización.
Conclusión
PowerShell Core es una herramienta flexible y potente que puede simplificar considerablemente la vida tanto de desarrolladores como de usuarios de Windows. Permite automatizar tareas rutinarias, escribir scripts multiplataforma e integrarse eficazmente con servicios en la nube y entornos CI/CD populares. Gracias a la posibilidad de instalarse en diferentes plataformas, PowerShell Core abre nuevas oportunidades para equipos que trabajan en entornos heterogéneos.
Si usa el PowerShell estándar, la transición a PowerShell Core puede parecer un paso pequeño pero importante hacia una automatización más moderna, rápida y segura. Procure seguir las actualizaciones y explorar nuevos módulos, ya que la comunidad de PowerShell evoluciona activamente y ofrece soluciones cada vez más variadas. Descubra las capacidades ampliadas de PowerShell Core y disfrute de la comodidad de trabajar en un entorno de automatización unificado.
Materiales adicionales y detalles se pueden consultar en el sitio oficial de Microsoft sobre PowerShell o en el repositorio del proyecto en GitHub. Si tiene preguntas o necesita ayuda, la comunidad está disponible en foros y canales de chat. Use PowerShell Core y no tema experimentar con nuevas soluciones.