Hoy vengo a mostrarles como actualizar a PowerShell 4.0
En esta ocasion voy a usar Windows Server 2008r2 como maquina de prueba.
Voy a verificar la version de PowerShell instalada mostrando la variable $PSVersionTable

Bien, ahora necesito saber si mi sistema operativo es de 32 o 64 bits. Para verificar esto, voy a revisar la variable $env:PROCESSOR_ARCHITECTURE

En este caso no es necesario, Windows Server 2008r2 solo esta disponible en version de 64 bits.
AMD64, eso significa que la version es de 64 bits. Perfecto, ahora solo queda revisar la Matriz de Compatibilidad para ver que necesitamos descargar.

Voy a necesitar el SP1, pero realmente no recuerdo si ya lo había instalado… Verifiquemos esto usando el comando
Get-WMIObject Win32_OperatingSystem | select Caption, ServicePackMajorVersion

Excelente! Ya tengo el Service Pack 1 instalado.
Ahora vamos por el .Net Framework 4.5. Es muy importante verificar que este instalado, porque si no lo esta, (por alguna razon) la instalacion de PS 4.0 no va a mostrar fallas, pero tampoco va a funcionar.
Verificamos esto usando el siguiente codigo:
(Get-ItemProperty -Path 'HKLM:\Software\Microsoft\NET Framework Setup\NDP\v4\Full' -ErrorAction SilentlyContinue).Version -like '4.5*'

Como no esta instalado, lo bajamos desde la pagina de Microsoft (los links estan mas abajo), lo ejecutamos:

Y chequeamos nuevamente

Listo? No! Ahora falta el Windows Management Framework (WMF) 4.0 (de nuevo, los links para descargar estan mas abajo).

Reiniciamos… y ahora si!
Por la dudas vamos a revisar de nuevo, ejecutamos PowerShell y revisamos la variable $PSVersionTable…

Al final fue bastante fácil, no?
Podemos ver que novedades nos trae PowerShell 4.0 aca
Links para las descargas que figuran en la Matriz de Disponibilidad:
- .Net Framework 4.5
- Service Pack 1 (Dentro del enlace estan todas las versiones)
- WMF 4.0 (Dentro del enlace estan todas las versiones)