En esta sección, aprenderás cómo instalar y configurar PowerShell en diferentes sistemas operativos. PowerShell es una herramienta poderosa que puede ser utilizada en Windows, macOS y Linux. A continuación, se detallan los pasos para cada sistema operativo.
Instalación en Windows
PowerShell 5.1
PowerShell 5.1 viene preinstalado en Windows 10 y Windows Server 2016. Para verificar la versión de PowerShell instalada, abre una consola de PowerShell y ejecuta el siguiente comando:
PowerShell 7 (PowerShell Core)
PowerShell 7 es la versión multiplataforma de PowerShell. Para instalar PowerShell 7 en Windows, sigue estos pasos:
-
Descargar el Instalador:
- Ve a la página de lanzamientos de PowerShell en GitHub.
- Descarga el instalador MSI adecuado para tu sistema (x64 o x86).
-
Ejecutar el Instalador:
- Ejecuta el archivo MSI descargado y sigue las instrucciones del asistente de instalación.
-
Verificar la Instalación:
- Abre una nueva consola de PowerShell y ejecuta:
pwsh
- Verifica la versión instalada con:
$PSVersionTable.PSVersion
- Abre una nueva consola de PowerShell y ejecuta:
Instalación en macOS
Para instalar PowerShell en macOS, puedes usar Homebrew, un gestor de paquetes popular para macOS.
-
Instalar Homebrew (si no está instalado):
- Abre la Terminal y ejecuta:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- Abre la Terminal y ejecuta:
-
Instalar PowerShell:
- Ejecuta el siguiente comando en la Terminal:
brew install --cask powershell
- Ejecuta el siguiente comando en la Terminal:
-
Verificar la Instalación:
- Abre una nueva Terminal y ejecuta:
pwsh
- Verifica la versión instalada con:
$PSVersionTable.PSVersion
- Abre una nueva Terminal y ejecuta:
Instalación en Linux
PowerShell puede ser instalado en varias distribuciones de Linux. A continuación, se muestra cómo instalarlo en Ubuntu.
-
Actualizar el Índice de Paquetes:
- Abre una Terminal y ejecuta:
sudo apt-get update
- Abre una Terminal y ejecuta:
-
Instalar los Paquetes Requeridos:
- Ejecuta:
sudo apt-get install -y wget apt-transport-https software-properties-common
- Ejecuta:
-
Importar la Llave de Firma de Microsoft:
- Ejecuta:
wget -q https://packages.microsoft.com/keys/microsoft.asc -O- | sudo apt-key add -
- Ejecuta:
-
Registrar el Repositorio de Microsoft:
- Ejecuta:
sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-focal-prod focal main" > /etc/apt/sources.list.d/microsoft.list'
- Ejecuta:
-
Instalar PowerShell:
- Ejecuta:
sudo apt-get update sudo apt-get install -y powershell
- Ejecuta:
-
Verificar la Instalación:
- Abre una nueva Terminal y ejecuta:
pwsh
- Verifica la versión instalada con:
$PSVersionTable.PSVersion
- Abre una nueva Terminal y ejecuta:
Configuración Inicial
Configuración del Perfil de PowerShell
El perfil de PowerShell es un script que se ejecuta cada vez que se inicia una nueva sesión de PowerShell. Puedes usar el perfil para personalizar tu entorno de PowerShell.
-
Crear el Archivo de Perfil:
- Ejecuta el siguiente comando para crear el archivo de perfil si no existe:
if (!(Test-Path -Path $PROFILE)) { New-Item -Type File -Path $PROFILE -Force }
- Ejecuta el siguiente comando para crear el archivo de perfil si no existe:
-
Editar el Archivo de Perfil:
- Abre el archivo de perfil en un editor de texto:
notepad $PROFILE
- Agrega cualquier configuración o comandos que desees ejecutar al inicio de cada sesión.
- Abre el archivo de perfil en un editor de texto:
Configuración de la Política de Ejecución
La política de ejecución determina qué scripts de PowerShell pueden ejecutarse en tu sistema. Para cambiar la política de ejecución, usa el siguiente comando:
- RemoteSigned: Permite la ejecución de scripts locales sin firmar y scripts remotos firmados.
Ejemplo de Configuración de Perfil
A continuación, se muestra un ejemplo de cómo podrías configurar tu perfil de PowerShell:
# Establecer el color de fondo y de texto $host.UI.RawUI.BackgroundColor = "DarkBlue" $host.UI.RawUI.ForegroundColor = "White" Clear-Host # Alias personalizados Set-Alias ll Get-ChildItem Set-Alias cls Clear-Host # Funciones personalizadas function Prompt { "PS $($executionContext.SessionState.Path.CurrentLocation)> " } # Mensaje de bienvenida Write-Host "Bienvenido a PowerShell!" -ForegroundColor Green
Resumen
En esta sección, hemos cubierto cómo instalar y configurar PowerShell en Windows, macOS y Linux. También hemos visto cómo personalizar el entorno de PowerShell mediante la configuración del perfil y la política de ejecución. Con PowerShell instalado y configurado, estás listo para comenzar a explorar sus capacidades y a escribir tus primeros scripts.
En el próximo tema, exploraremos la consola de PowerShell y el entorno de scripting integrado (ISE).
Curso de PowerShell
Módulo 1: Introducción a PowerShell
- ¿Qué es PowerShell?
- Instalación y Configuración de PowerShell
- Consola de PowerShell e ISE
- Comandos Básicos y Sintaxis
- Sistema de Ayuda en PowerShell
Módulo 2: Scripting Básico
- Variables y Tipos de Datos
- Operadores en PowerShell
- Sentencias Condicionales
- Bucles en PowerShell
- Funciones y Scripts
Módulo 3: Trabajando con Objetos
- Entendiendo los Objetos
- Propiedades y Métodos de los Objetos
- Pipelines y Manipulación de Objetos
- Filtrado y Selección de Objetos
- Ordenación y Agrupación de Objetos
Módulo 4: Técnicas Avanzadas de Scripting
- Manejo de Errores
- Depuración de Scripts
- Expresiones Regulares
- Trabajando con Archivos y Directorios
- Uso de Módulos y Snap-ins
Módulo 5: Automatización y Programación de Tareas
- Introducción a la Automatización
- Creación de Tareas Programadas
- Uso de PowerShell para Administración del Sistema
- Automatización de Tareas de Active Directory
- Automatización de Tareas de Red
Módulo 6: PowerShell Remoting
- Introducción al Remoting
- Configuración del Remoting
- Uso de Invoke-Command
- Gestión de Sesiones
- Consideraciones de Seguridad
Módulo 7: Funcionalidades Avanzadas de PowerShell
- Perfiles de PowerShell
- Personalización del Entorno de PowerShell
- Creación y Uso de Clases
- Trabajando con XML y JSON
- Uso de PowerShell con REST APIs
Módulo 8: PowerShell y DevOps
- Introducción a DevOps
- Uso de PowerShell con Pipelines de CI/CD
- Infraestructura como Código (IaC)
- Gestión de Recursos en la Nube con PowerShell
- PowerShell y Docker