Scripting en PowerShell
El salto de teclear comandos a automatizarlos. Scripts .ps1, variables y objetos, if/switch, bucles for/foreach/while, funciones con parámetros, $args, try/catch y la ExecutionPolicy (qué es y por qué te protege). Cerramos con un script real de informe del sistema y el contraste con los .bat clásicos.
🤖De teclear comandos a AUTOMATIZARLOS
Un script es, sencillamente, una lista de comandos guardada en un fichero para que se ejecuten solos, en orden, las veces que quieras. Es el salto de "hago esto a mano cada día" a "lo escribo una vez y la máquina lo repite".
En PowerShell los scripts son ficheros con extensión .ps1. Los editas con el Bloc de notas, con VS Code (lo ideal) o con el ISE, y los lanzas desde la consola. Todo lo que ya sabes (cmdlets, pipeline, Where/Select/Sort) sigue valiendo: ahora solo lo empaquetas.
Para contrastar: un .bat (o .cmd) es el equivalente clásico en CMD — también es una lista de comandos en un fichero de texto. Sirve para cosas sencillas, pero PowerShell es muchísimo más potente para scripts de verdad. Lo vemos al final.
🔑La ExecutionPolicy: por qué tu primer script "no se ejecuta"
La primera vez que lances un .ps1 probablemente veas un error de "ejecución de scripts deshabilitada". No es un fallo: es una medida de seguridad llamada ExecutionPolicy. Windows, por defecto, no corre scripts a la ligera para protegerte de uno malicioso que llegue por correo o descarga.
Get-ExecutionPolicyRestricted).Get-ExecutionPolicy -ListSet-ExecutionPolicy RemoteSigned -Scope CurrentUserLos niveles, de más a menos seguro: Restricted (no corre scripts), AllSigned (solo firmados), RemoteSigned (los tuyos sí, los de internet solo firmados) y Unrestricted (corre todo; no recomendable).
RemoteSigned a nivel CurrentUser es el equilibrio profesional: te deja trabajar con tus scripts sin abrir la puerta a los de procedencia dudosa. Entender POR QUÉ existe esta barrera es más valioso que saltarla: es tu primera línea de defensa frente a scripts hostiles.
El resto de la lección está en el Laboratorio
Esto es una muestra gratuita. La lección completa (los 11 bloques restantes con sus chuletas de comandos copiables, diagramas y el resumen) está dentro, junto a tu Kali en el navegador, las máquinas, el Arsenal y el tutor Rio.
Únete para desbloquearla →