Cómo Crear tu Primer Script En PowerShell

Cómo Crear tu Primer Script En PowerShell

por Raúl Unzué

Automatizar tareas con Scrips para PowerShell

Si nunca has usado PowerShell, no te preocupes. En esta guía aprenderás desde cero cómo escribir tu primer script utilizando Powershell ISE, una herramienta sencilla y amigable para principiantes. Al finalizar, sabrás cómo automatizar una tarea básica, explorar comandos y entender conceptos clave como funciones y clases.

Un script de PowerShell es básicamente un archivo de texto que contiene una serie de instrucciones escritas en el lenguaje de scripting de PowerShell. Estas instrucciones están diseñadas para automatizar tareas en sistemas Windows (y también en otras plataformas compatibles). Piensa en un script como una receta: en lugar de cocinar un plato, le estás diciendo a tu computadora qué hacer y en qué orden.

El archivo de un script de PowerShell suele tener la extensión .ps1, y dentro puede haber desde comandos simples, como mover archivos o renombrarlos, hasta procesos más complejos, como configurar servidores o gestionar usuarios en una red.

La idea detrás de un script es que te ahorre tiempo y esfuerzo al permitir que tareas repetitivas se ejecuten de manera automática. Además, como está en formato de texto, es fácil de modificar y reutilizar (podrías modificarlo con un simple Notepad o Notepad++), lo que lo hace ideal para administradores de sistemas que buscan eficiencia en su trabajo.

Configurar el Entorno: PowerShell ISE

¿Qué es PowerShell ISE?

El PowerShell Integrated Scripting Environment (ISE) es una herramienta integrada en Windows que te permite:

  • Escribir y probar scripts
  • Ejecutar comandos directamente en una consola
  • Depurar y corregir errores de forma visual

Si prefieres un editor más moderno, como Visual Studio Code con la extensión Powershell, también puedes usarlo, pero PowerShell ISE es ideal para principiantes.

Geeknetic Cómo Crear tu Primer Script En PowerShell 1

Cómo Abrir PowerShell ISE

  • Presiona “Windows + S” y escribe PowerShell ISE

    Geeknetic Cómo Crear tu Primer Script En PowerShell 2

  • Haz clic en el resultado para abrirlo

    Geeknetic Cómo Crear tu Primer Script En PowerShell 3

 

Cambiar la Política de Ejecución en Powershell

Por razones de seguridad, Windows restringe la ejecución de scripts. Cambia esta configuración para preparar el entorno de la siguiente forma:

  • Escribe el siguiente comando en la pantalla inferior azul de Powershell ISE:
  • Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned

     

  • Confirma presionando “”:

    Geeknetic Cómo Crear tu Primer Script En PowerShell 4

 

Crea tu Primer Script de PowerShell

Paso 1: Crear un Nuevo Archivo

Con el entorno preparado, ya podemos empezar a crear nuestro primer script de PowerShell. Podemos escribir en la parte superior, en el espacio en blanco.

Si no dispones de esa ventana al abrir PowerShell ISE, haz clic en Archivo > Nuevo para que aparezca.

Paso 2: Escribir Comandos Básicos

Comenzaremos con un ejemplo sencillo que muestra información básica del sistema operativo:

# Muestra un mensaje de bienvenida
 Write-Host "¡Bienvenido a tu primer script en PowerShell!"
 # Muestra la fecha y hora actualWrite-Host "Fecha y hora actual:" (Get-Date)
 # Muestra información del sistema operativo
 Write-Host "Sistema operativo:" (Get-WmiObject Win32_OperatingSystem).Caption

 

Explicación script:

  • Write-Host: Muestra texto en la consola.
  • Get-Date: Obtiene la fecha y hora actual.
  • Get-WmiObject: Muestra información de la versión del sistema operativo.
    • Clase Win32_OperatingSystem: En este caso, estamos utilizando una clase de PowerShell que forma parte del modelo WMI (Windows Management Instrumentation). Las clases en PowerShell son estructuras que contienen propiedades y métodos, lo que significa que describen objetos (como el sistema operativo) y las acciones que se pueden realizar sobre ellos. La clase Win32_OperatingSystem contiene detalles como el nombre del sistema, la versión y más.

Paso 3: Guardar el Script

Haz clic en Archivo > Guardar como

Guarda el archivo con la extensión .ps1, por ejemplo: MiPrimerScriptdePowershell.ps1

Geeknetic Cómo Crear tu Primer Script En PowerShell 5

Paso 4: Ejecutar el Script

Haz clic en el botón verde Ejecutar script o presiona F5.

Geeknetic Cómo Crear tu Primer Script En PowerShell 6

El resultado aparecerá en la consola en la parte inferior de PowerShell ISE:

Geeknetic Cómo Crear tu Primer Script En PowerShell 7

Si el script tiene algún error o fallo de sintaxis, nos revelará en su ejecución el problema para poder corregirlo.

Fuerzo el fallo sustituyendo el comando “Get-WmiObject” por “Get-WmiObjectX” :

# Muestra información del sistema operativo
 Write-Host "Sistema operativo:" (Get-WmiObjectX Win32_OperatingSystem).Caption

Geeknetic Cómo Crear tu Primer Script En PowerShell 8

Probar seccions script

Puedes probar secciones independientes del script, seleccionando el texto y pulsando F8 o el botón de “Ejecutar selección”:

Geeknetic Cómo Crear tu Primer Script En PowerShell 9

Agregar una Función a tu Script

Si quieres automatizar procesos en tu script, puedes agregar una función.

Una función es un conjunto de comandos agrupados bajo un nombre, que puedes reutilizar en diferentes partes de tu script.

Ejemplo: crear una funcion para saludar

Edita tu script y añade la siguiente función:

# Función para saludar a un usuariofunction Saludar {
     param ([string]$Nombre)
     Write-Host "Hola, $Nombre. ¡Bienvenido al mundo de PowerShell!"
 }

Llama a la función desde el script:

Saludar -Nombre "María"

Explicación función:

  • function Saludar: Declara una nueva función llamada “Saludar”.
  • param: Define parámetros que la función puede recibir (en este caso, un nombre).
  • Write-Host: Muestra un mensaje usando el parámetro “$Nombre”.

Guarda el archivo y vuelve a ejecutarlo. Verás un saludo personalizado en la consola.

Geeknetic Cómo Crear tu Primer Script En PowerShell 10

 

Agregar una Función a tu Script

Si quieres automatizar procesos en tu script, puedes agregar una función.

Una función es un conjunto de comandos agrupados bajo un nombre, que puedes reutilizar en diferentes partes de tu script.

Ejemplo: crear una funcion para saludar

Edita tu script y añade la siguiente función:

# Función para saludar a un usuariofunction Saludar {
     param ([string]$Nombre)
     Write-Host "Hola, $Nombre. ¡Bienvenido al mundo de PowerShell!"
 }Llama a la función desde el script:Saludar -Nombre "María"

Explicación función:

  • function Saludar: Declara una nueva función llamada “Saludar”.
  • param: Define parámetros que la función puede recibir (en este caso, un nombre).
  • Write-Host: Muestra un mensaje usando el parámetro “$Nombre”.

Guarda el archivo y vuelve a ejecutarlo. Verás un saludo personalizado en la consola.

Geeknetic Cómo Crear tu Primer Script En PowerShell 11

Conclusión

En definitiva, un script de PowerShell no solo ahorra tiempo y reduce errores, sino que también amplía las posibilidades de automatización y control en el ámbito IT, convirtiéndolo en una herramienta esencial en la gestión tecnológica.

Aunque es una herramienta integrada en Windows, podéis ejecutarlo también en sistemas Linux o MacOS si no os sentís tan cómodos con bash, por ejemplo, haciendo que los scripts sean útiles en entornos híbridos y modernos. Además, como hemos comentado, con su enfoque de reutilización (es posible lanzarlo bajo tareas programadas) y personalización, lo convierte en un arma muy poderosa.

Fin del Artículo. ¡Cuéntanos algo en los Comentarios!

Redactor del Artículo: Raúl Unzué

Raúl Unzué

Soy un apasionado de la virtualización con más de 20 años de experiencia, especializado en soluciones como VMware(premio vExpert y vExpert Pro desde 2013), Proxmox e Hyper-V. Durante mi carrera, he ayudado a empresas a optimizar sus infraestructuras TI mientras comparto mis conocimientos como redactor IT. Mi objetivo es traducir lo complejo en algo práctico y accesible, combinando teoría con experiencia real. Si te interesa la virtualización, las herramientas TI o simplemente aprender algo nuevo, espero ayudarte con mis artículos.