Aprendizaje sobre Windows PowerShell
PowerShell es una solución de automatización formada por un shell de línea de comandos, un lenguaje de scripting y un marco de administración de configuración.
Shell de línea de comandos
Windows PowerShell sustituyó la interfaz de línea de comandos de Windows (cmd.exe) y la funcionalidad limitada de su lenguaje de scripting de archivos por lotes. PowerShell acepta y devuelve objetos .NET e incluye:
- Un historial de línea de comandos.
- Finalización y predicción de tabulación.
- Compatibilidad con alias de parámetros y comandos.
- Encadenamiento de comandos que usan la característica Canalización.
- Un sólido sistema de ayuda en la consola
Inicialmente, Windows PowerShell era una plataforma creada en .NET Framework y solo funcionaba con los sistemas operativos Windows. Sin embargo, en sus versiones recientes, PowerShell usa .NET Core y se puede ejecutar en plataformas Windows, macOS y Linux. Debido a su compatibilidad con varias plataformas, estas versiones recientes se conocen como PowerShell (en lugar de Windows PowerShell).
Un lenguaje de scripting
Los comandos proporcionan la funcionalidad principal de PowerShell. Hay muchas variedades de comandos, incluidos cmdlets (pronunciado command-lets), funciones, filtros, scripts, aplicaciones, configuraciones y flujos de trabajo. Los comandos son bloques de creación que se agrupan mediante el lenguaje de scripting de Windows PowerShell. Con los comandos, puede crear soluciones personalizadas para problemas administrativos complejos. Como alternativa, puede ejecutar comandos directamente en la consola de PowerShell para realizar una sola tarea. La consola es la CLI de PowerShell y es la forma principal en la que interactuará con PowerShell.
Los cmdlets usan una convención de nomenclatura de Verbo-Sustantivo. Por ejemplo, puede usar el cmdlet Get-Command para enumerar todos los cmdlets y funciones registrados en el shell de comandos. El verbo identifica la acción que realiza el cmdlet y el sustantivo identifica el recurso sobre el que el cmdlet realiza la acción.
Las aplicaciones de servidor de Microsoft y los servicios en la nube proporcionan cmdlets especializados que puede usar para administrar esos servicios. De hecho, solo puedes administrar algunas funcionalidades mediante PowerShell. En muchos casos, incluso cuando la aplicación proporciona una interfaz gráfica de usuario (GUI) para administrar una funcionalidad específica, recurre a PowerShell para implementar al menos algunas de sus características en segundo plano.
Marco de administración de la configuración
PowerShell incorpora el marco de administración de PowerShell Desired State Configuration (DSC). Este marco le permite administrar la infraestructura empresarial con código para ayudar a:
- Usar configuraciones declarativas y scripts repetibles para implementaciones repetibles.
- Aplicar valores de configuración e identificar cuándo se produce un desfase de configuración de los requisitos estándar.
- Implementar valores de configuración mediante modelos de inserción o extracción.
Las aplicaciones y los servicios con funciones administrativas basadas en PowerShell tienen un funcionamiento coherente. Este atributo significa que puede aplicar rápidamente lo aprendido. Además, al usar scripts de automatización para administrar una aplicación de software, puede reutilizarlos entre otras aplicaciones.
Versiones de Windows PowerShell
A medida que obtiene información sobre PowerShell, es importante comprender las distintas versiones que puede encontrar, en función del tipo y la edición del sistema operativo (SO). Existen dos plataformas principales de PowerShell:
- Windows PowerShell
- PowerShell (conocida originalmente como PowerShell Core)
Windows PowerShell
Windows PowerShell está disponible exclusivamente para el sistema operativo Windows. Windows PowerShell 1.0 se introdujo en 2006 como componente instalable en Windows XP Service Pack 2 (SP2), Windows Server 2003 SP1 y Windows Vista. Era también un componente opcional de Windows Server 2008. En 2009, PowerShell 2.0 se integró en Windows 7 y Windows Server 2008 R2. Todas las versiones de Windows PowerShell hasta la versión 5.1 inclusive, que es la versión disponible con Windows 10, se integran en un sistema operativo Windows.
Windows PowerShell es un componente del sistema operativo, por lo que recibe el mismo soporte de ciclo de vida y contratos de licencia que su sistema operativo primario.
PowerShell
PowerShell Core se entrega, se instala y se configura con independencia de Windows PowerShell. Inicialmente se lanzó como PowerShell Core 6.0 en 2018, fue la primera versión que ofrecía compatibilidad con varias plataformas, ampliando su disponibilidad para los sistemas operativos macOS y Linux.
Nota:
La versión más reciente de PowerShell es PowerShell 7.5, disponible a través de Microsoft Update.
PowerShell y Windows PowerShell se instalan por separado y puede ejecutar comandos compatibles con cualquiera de los entornos.
Los contratos de licencia estándar de Windows no incluyen PowerShell. Su asistencia es mediante soporte técnico de pago de Microsoft, los Contratos Enterprise de Microsoft y Microsoft Software Assurance. El soporte técnico de la comunidad también está disponible.
Historial de lanzamientos de versiones
En la siguiente tabla, se recoge una cronología general de las principales versiones de PowerShell:
Tabla 1: Escalas de tiempo de la versión de PowerShell
| Versión | Fecha de la versión | Notas |
|---|---|---|
| PowerShell 7.5 | Enero de 2025 | Basado en .NET 9.0. |
| PowerShell 7.4 | Noviembre de 2023 | Basado en .NET 8.0. |
| PowerShell 7.3 | Noviembre de 2022 | Basado en .NET 7.0. |
| PowerShell 7.2 | Noviembre de 2021 | Basado en .NET 6.0. |
| PowerShell 7.1 | Noviembre de 2020 | Compilado en .NET 5.0. |
| PowerShell 7.0 | Marzo de 2020 | Basado en .NET Core 3.1. |
| PowerShell 6.0 | Septiembre de 2018 | Basado en .NET Core 2.0. Primera versión instalable en Windows, Linux y macOS. |
| PowerShell 5.1 | Agosto de 2016 | Lazada con la actualización del aniversario de Windows 10 y Windows Server 2016 y como parte de Windows Management Framework (WMF) 5.1. |
| PowerShell 5.0 | Febrero de 2016 | Integrado en Windows 10 versión 1511. Publicado en Windows Management Framework (WMF) 5.0. Se puede instalar en Windows Server 2008 R2, Windows Server 2012, Windows 10, Windows 8.1 Enterprise, Windows 8.1 Pro y Windows 7 SP1. |
| PowerShell 4.0 | Octubre de 2013 | Integrado en Windows 8.1 y Windows Server 2012 R2. Se puede instalar en Windows 7 SP1, Windows Server 2008 SP1 y Windows Server 2012. |
| PowerShell 3.0 | Octubre 2012 | Integrado en Windows 8 y Windows Server 2012. Se puede instalar en Windows 7 SP1, Windows Server 2008 SP1 y Windows Server 2008 R2 SP1. |
| PowerShell 2.0 | Julio de 2009 | Integrado en Windows 7 y Windows Server 2008 R2. Se puede instalar en Windows XP SP3, Windows Server 2003 SP2 y Windows Vista SP1. |
| PowerShell 1.0 | 2006 de noviembre | Se puede instalar en Windows XP SP2, Windows Server 2003 SP1 y Windows Vista. Componente opcional de Windows Server 2008. |
Nota:
En este módulo, los temas se relacionarán con las versiones más recientes de Windows PowerShell y PowerShell (5.1 y 7.5). La mayoría de los cmdlets funcionarán con cualquiera de las plataformas. No obstante, aparecerá una nota si solo se admite una característica específica o se relaciona con una plataforma específica.
Lectura adicional: Para admitir versiones más recientes de PowerShell en sistemas operativos de nivel descendente, es posible que tenga que instalar la versión más reciente de Windows Management Framework. Para obtener más información, consulte Instalación y configuración de WMF 5.1.