Guía Completa de Comandos de PowerShell para Usuarios de Windows

Última actualización: septiembre 3, 2026
Autor: Isaac
  • Dominio de la sintaxis de cmdlets basada en la estructura de verbo y sustantivo para automatizar tareas.
  • Gestión avanzada de archivos, directorios, procesos y servicios del sistema mediante la línea de comandos.
  • Administración de cuentas de usuario locales y de dominio, incluyendo la gestión de grupos y permisos.
  • Implementación de seguridad mediante políticas de ejecución, firmas digitales y monitoreo de registros.

Laptop displaying code editor with coffee mug on desk, representing a professional programming environment

Si alguna vez has sentido que hacer clic en iconos y navegar por menús infinitos te quita más tiempo del que ganas, es probable que sea el momento de darle una oportunidad a la consola. Windows PowerShell no es solo una ventana azul donde escribir texto raro; es una herramienta brutalmente potente que permite controlar cada rincón de tu sistema operativo sin despegar los dedos del teclado, ideal tanto para quien está empezando como para los administradores de sistemas más curtidos.

A diferencia del antiguo Símbolo del sistema o CMD, PowerShell es un entorno basado en objetos y un lenguaje de scripting completo. Esto significa que no solo lanza órdenes, sino que puede manipular datos complejos y automatizar procesos que, a mano, serían un auténtico dolor de cabeza. En este artículo vamos a desgranar todo lo que necesitas saber para aprender a usar Windows PowerShell y pasar de no tener ni idea a manejar el shell con soltura, explorando desde la navegación básica hasta la gestión de redes y seguridad.

Related article:
Windows PowerShell: ¡Aprende a Usarlo!

Fundamentos: ¿Cómo funciona realmente PowerShell?

Close-up of hands typing on a laptop keyboard, illustrating the process of entering PowerShell commands

Lo primero que hay que pillar es que PowerShell utiliza unos comandos llamados cmdlets. Estos siguen una lógica muy sencilla de verbo-sustantivo, lo que hace que, una vez entiendes el patrón, sea muy fácil adivinar cómo se llama un comando aunque nunca lo hayas usado. Por ejemplo, si quieres obtener algo, el verbo será Get; si quieres crear algo, será New; y si quieres borrarlo, Remove.

Para que no tengamos que escribir nombres larguísimos todo el tiempo, existen los alias. Son básicamente atajos. Así, en lugar de escribir Get-ChildItem, puedes poner simplemente ls o dir, que son comandos familiares para quienes vienen de Linux o del CMD clásico. Además, para ajustar el comportamiento de estos comandos, usamos los parámetros, que suelen empezar con un guion (como -Name o -Path) y nos permiten ser mucho más específicos con lo que queremos hacer.

Navegando y gestionando el sistema de archivos

Server racks in a modern data center, illustrating remote server management via PowerShell

Moverse por las carpetas es el primer paso. El comando Set-Location (o su alias sl y cd) es el que nos permite saltar de un directorio a otro. Si quieres volver rápidamente a tu carpeta de usuario, basta con usar sl ~. Para echar un vistazo a qué hay dentro de la carpeta donde estás parado, el rey es Get-ChildItem (alias gci, ls o dir), que te despliega todos los archivos y subcarpetas.

Related article:
PowerShell como administrador en la carpeta actual en Windows 10

Cuando se trata de crear contenido, New-Item (alias ni) es la herramienta adecuada. Con él puedes fabricar desde un archivo de texto vacío hasta una carpeta completa si añades el parámetro de tipo directorio. Para mover o renombrar cosas, usamos Move-Item (alias mv), y si lo que queremos es una copia exacta en otro lugar, tiramos de Copy-Item (alias cp). Eso sí, ten mucho ojo con Remove-Item (alias rm), ya que borra los elementos de forma permanente sin pasar por la papelera de reciclaje.

Manipulación de datos y lectura de archivos

Laptop screen showing a digital security lock icon, representing PowerShell security and execution policies

PowerShell brilla cuando empezamos a leer y escribir contenido sin abrir el Bloc de notas. Con Get-Content (alias gc o cat) podemos volcar el texto de un archivo directamente en la consola. Si el archivo es un testamento, podemos usar -TotalCount para ver solo el principio o -Tail para leer las últimas líneas.

Para meter texto en un archivo, usamos Write-Output o Set-Content. Aquí entra en juego la redirección de salida: el símbolo > sobrescribe el archivo, mientras que >> añade la información al final del documento existente. Si necesitas buscar una palabra específica entre miles de líneas, Select-String (alias sls) actúa como un buscador potente que filtra exactamente lo que necesitas.

Administración de Procesos y Servicios

Detailed view of colorful code on a screen with blue ambient lighting, representing advanced scripting and automation

Cuando el ordenador se pone lento o un programa se queda colgado, PowerShell es la solución rápida. Get-Process nos da una lista de todo lo que se está ejecutando, y si queremos detener un proceso rebelde, usamos Stop-Process indicando su ID o nombre. También podemos lanzar aplicaciones con Start-Process.

Related article:
Solución alta CPU PowerShell en Windows [Tutorial]

En cuanto a los servicios de fondo, que son los que hacen que Windows funcione correctamente, tenemos el trío dinámico: Get-Service para ver el estado, Start-Service para arrancarlos y Stop-Service para apagarlos. Es muy útil filtrar los servicios que están en ejecución usando el símbolo de tubería | y el comando Where-Object para limpiar los resultados y ver solo lo que nos interesa.

Gestión de Usuarios y Grupos Locales

Si tienes que administrar cuentas en una máquina, el módulo Microsoft.PowerShell.LocalAccounts es tu mejor aliado. Para ver quién tiene acceso al equipo, usamos Get-LocalUser. Para crear un nuevo integrante en el sistema, el comando es New-LocalUser, donde podemos definir si la cuenta estará deshabilitada o si la contraseña nunca caducará.

Una vez creado el usuario, es normal querer darle ciertos privilegios. Para ello, utilizamos la gestión de usuarios de Windows desde PowerShell mediante el comando Add-LocalGroupMember, que nos permite meter a un usuario en un grupo específico, como el de Administradores. Si el usuario ya no es necesario, Remove-LocalUser lo elimina del mapa. Para los que trabajan en entornos corporativos, existen comandos similares pero orientados a Active Directory, como New-ADUser, que permiten gestionar identidades a escala en todo un dominio.

Redes, Conectividad y Gestión Remota

Para comprobar si un servidor o una web responden, Test-Connection es la versión moderna del ping. Si necesitamos saber a qué IP resuelve un nombre de dominio, usamos Resolve-DnsName. En el ámbito profesional, la capacidad de gestionar equipos a distancia es vital. Para ello, habilitamos Enable-PSRemoting y usamos Enter-PSSession para entrar en la consola de otra máquina como si estuviéramos sentados delante de ella.

Cómo gestionar usuarios de Windows desde PowerShell
Related article:
Cómo gestionar usuarios de Windows desde PowerShell: guía total

Si no queremos entrar en una sesión interactiva sino lanzar un comando rápido en varios servidores a la vez, Invoke-Command es la opción más eficiente. Esto permite realizar tareas de mantenimiento masivo sin tener que conectar uno por uno, ahorrando horas de trabajo tedioso.

Seguridad, Políticas y Monitoreo

Windows no deja ejecutar cualquier script por defecto para evitar virus. Esto se controla con la política de ejecución. Get-ExecutionPolicy nos dice qué restricciones hay, y activar o desactivar la ejecución de scripts mediante Set-ExecutionPolicy nos permite cambiarlas (por ejemplo, a RemoteSigned para ejecutar nuestros propios scripts). Para añadir una capa extra de confianza, podemos firmar digitalmente nuestros archivos con Set-AuthenticodeSignature.

Para los que necesitan vigilar la salud del sistema, Get-EventLog y Get-WinEvent permiten rastrear errores críticos o inicios de sesión fallidos en los registros de Windows. Además, podemos usar Get-ACL para revisar quién tiene permiso de lectura o escritura sobre un archivo y Set-ACL para corregir esos permisos si algo anda mal.

Trucos avanzados y optimización

Para sacar el máximo partido, hay que dominar el piping o canalización. El símbolo | toma la salida de un comando y la pasa como entrada al siguiente. Así podemos, por ejemplo, listar procesos, filtrarlos por uso de RAM y exportar el resultado a un archivo CSV usando Export-Csv.

Si te encuentras repitiendo la misma secuencia de comandos una y otra vez, lo mejor es crear una función personalizada. Básicamente, agrupas varios cmdlets bajo un nombre nuevo y lo guardas. También puedes usar Set-Alias para crear tus propios atajos personalizados, haciendo que la consola se adapte totalmente a tu flujo de trabajo.

Dominar esta herramienta implica entender la interacción entre los cmdlets, el uso inteligente de los alias y la capacidad de filtrar datos mediante tuberías. Desde la simple creación de carpetas y la gestión de usuarios hasta la administración remota de servidores y la auditoría de seguridad, PowerShell transforma la manera de interactuar con Windows, convirtiendo tareas manuales lentas en procesos automatizados y precisos que potencian la productividad de cualquier usuario avanzado o profesional de IT.

Related article:
Cómo activar o desactivar la ejecución de scripts en Windows PowerShell [Tutorial]