Cómo crear alias de comandos en CMD y PowerShell: guía definitiva para optimizar tu terminal en Windows

Última actualización:
Autor:
  • PowerShell permite crear alias temporales y permanentes fácilmente, mientras que en CMD hay que recurrir a scripts o enlaces simbólicos para conseguir funcionalidades similares.
  • La personalización de alias en PowerShell se puede exportar/importar e incluso automatizar con perfiles, abriendo grandes posibilidades de productividad.
  • En CMD, aunque la creación de alias es menos directa, existen trucos y métodos para emular el comportamiento mediante archivos bat, cmd o mklink, permitiendo adaptar comandos entre sistemas.

alias cmd

Personalizar la terminal de Windows es posible y puede ahorrarte mucho tiempo, especialmente si sueles repetir comandos largos o quieres adaptar tu flujo de trabajo al estilo de Unix o Linux. Una de las mejores formas de conseguirlo es mediante la creación de alias, es decir, comandos abreviados o alternativos que ejecutan instrucciones más complejas. Sin embargo, el proceso para lograrlo varía mucho entre CMD (Command Prompt) y PowerShell, por lo que es esencial conocer todas las alternativas y trucos.

A lo largo de este artículo encontrarás una guía detallada, clara y sin rodeos sobre cómo crear, gestionar y hacer persistentes tus propios alias de comandos tanto en PowerShell como en CMD. Además, aprenderás los límites y ventajas propias de cada terminal, métodos para exportar/importar tus alias, consejos para usarlos en entornos colaborativos y cómo emular comandos de Linux en tu consola de Windows. Prepárate para llevar tu productividad en la terminal a otro nivel.

¿Qué es un alias en la terminal de Windows?

Un alias es básicamente un apodo o nombre alternativo para un comando o conjunto de comandos. Te permite ejecutar acciones completas con sólo escribir una palabra corta en vez de una instrucción extensa o difícil de recordar. Por ejemplo, puedes crear el alias list para mostrar el contenido de una carpeta, lanzar aplicaciones, o automatizar tareas complejas con solo escribir un comando abreviado.

En PowerShell, el sistema incorpora desde el inicio una gran cantidad de alias tanto para usuarios de Windows como de UNIX/Linux, permitiendo que comandos populares como ls, pwd, cd, cat, mv, cp, rm o dir funcionen igual que en otros sistemas operativos. Además, puedes definir tus propios alias según tus necesidades. En CMD, el proceso no es tan directo, pero existen métodos ingeniosos para conseguir algo similar y hasta adaptar tus scripts para que funcionen en ambos entornos.

Alias en PowerShell: posibilidades, ventajas y limitaciones

PowerShell es, sin duda, la reina en cuanto a flexibilidad y facilidad para crear y gestionar alias. Puedes asignar alias a casi cualquier comando, función, script, o incluso a ejecutables, ampliando enormemente las opciones de personalización.

  Sesiones de apertura de Hotmail - ¿Cómo cerrar Outlook / Hotmail ?

Existen dos tipos principales de alias en PowerShell:

  • Alias predefinidos: Listado integrado que mapea comandos comunes de Windows, UNIX y propios de PowerShell a sus respectivos cmdlets. Por ejemplo, dir es un alias de Get-ChildItem, ls también apunta a Get-ChildItem, y cat es un alias de Get-Content.
  • Alias definidos por el usuario: Alias personalizados que tú mismo creas para automatizar flujos de trabajo, abreviar comandos largos o adaptar la terminal a tus preferencias.

Cómo ver los alias actuales

Para consultar todos los alias disponibles en tu sesión de PowerShell, ejecuta:

Get-Alias

Este comando te muestra una tabla con los nombres de los alias y los comandos a los que hacen referencia. Si quieres ver los alias que apuntan a un determinado cmdlet, por ejemplo Get-ChildItem, hazlo así:

Get-Alias -Definition Get-ChildItem

¿Te interesa saber qué comando hay detrás de un alias concreto, como gci? Utiliza:

Get-Alias -Name gci

Crear un alias en PowerShell con Set-Alias

La forma estándar de crear alias en PowerShell es mediante el cmdlet Set-Alias. Su sintaxis básica es:

Set-Alias -Name acortado -Value ComandoOriginal

Ejemplo práctico: Supón que quieres crear el alias list para el comando Get-ChildItem:

Set-Alias -Name list -Value Get-ChildItem

A partir de ese instante, puedes escribir list en la terminal y automáticamente ejecutará Get-ChildItem.

Reasignar o modificar un alias existente

Si ya tienes un alias creado y quieres asignarlo a otro comando distinto, simplemente vuelve a ejecutar Set-Alias con el mismo nombre y el nuevo valor:

Set-Alias -Name list -Value Get-Location

Así, el alias list apuntará ahora a Get-Location en vez de Get-ChildItem.

Alias de solo lectura y opciones avanzadas

Puedes proteger tus alias para evitar que se modifiquen o borren accidentalmente. Por ejemplo, para crear un alias de solo lectura:

Set-Alias -Name loc -Value Get-Location -Option ReadOnly

Si después necesitas modificar o eliminar ese alias, deberás utilizar el parámetro -Force:

Set-Alias -Name loc -Value Get-ChildItem -Force

Alias para comandos con parámetros: creando funciones

El mayor ‘truco’ de PowerShell es que no puedes crear un alias directo a un comando con parámetros (por ejemplo, Get-ChildItem -Path C:\Windows). Pero sí puedes envolverte en una función y asociar el alias a esa función, como un pequeño script dentro de tu perfil:

function CD32 { Set-Location -Path C:\Windows\System32 }
Set-Alias -Name Go -Value CD32

Ahora, al escribir Go accederás directamente a esa carpeta.

  Cómo hacer una copia de seguridad del registro de Windows

Este método permite crear alias complejos, que pueden recibir parámetros, hacer validaciones o ejecutar múltiples líneas.

Haciendo los alias permanentes en PowerShell: utilizando tu perfil

Por defecto, los alias creados con Set-Alias existen solo durante la sesión actual. Al cerrar PowerShell se pierden. Para evitar esto, los usuarios avanzados utilizan los perfiles de PowerShell, que son scripts que se ejecutan cada vez que abres la terminal y pueden contener cualquier configuración personalizada, incluidos alias y funciones.

Para averiguar dónde está tu perfil:

echo $PROFILE

Para editarlo (o crearlo si no existe):

notepad $PROFILE

En ese archivo puedes pegar todas las funciones y alias que quieras que estén siempre disponibles al iniciar la terminal. Por ejemplo:

function GS { Get-Service }
Set-Alias gs GS

Guarda, cierra, y cuando abras una nueva terminal verás tus alias listos para usar.

Modificando políticas de ejecución para que los alias funcionen siempre

Puede que recibas errores al intentar cargar scripts desde el perfil, ya que PowerShell por seguridad restringe la ejecución de scripts.

Verifica el estado actual con:

Get-ExecutionPolicy

Para permitir que tus scripts se ejecuten (al menos los locales, no descargados de Internet), debes establecer la política en RemoteSigned:

Set-ExecutionPolicy RemoteSigned

Confirma la acción y, tras reiniciar la terminal, tus alias definidos en el perfil siempre estarán disponibles.

Exportar e importar alias personalizados

¿Quieres llevarte tus alias a otro equipo o compartirlos? PowerShell permite exportar todos los alias a un archivo:

Export-Alias -Path MisAlias.txt

Ten en cuenta que esto exportará todos, incluidos los que ya existen por defecto. Si solo quieres uno, usa el parámetro -Name:

Export-Alias -Path MisAlias.txt -Name gs

Para importarlos en otra máquina o sesión:

Import-Alias -Path MisAlias.txt

Si ya existen algunos alias, aparecerán advertencias, pero los nuevos se agregarán correctamente.

Alias en CMD: trucos, scripts y limitaciones

A diferencia de PowerShell, CMD (Command Prompt) no admite alias nativos como tal. Sin embargo, existen algunas soluciones prácticas para emular esta funcionalidad:

  • Enlaces simbólicos (mklink): Permite crear una especie de acceso directo ejecutable a otro programa, útil especialmente para scripts o aplicaciones. Puedes aprender más sobre cómo borrar la pantalla en CMD y optimizar tus scripts.
  • Archivos por lotes (.bat o .cmd): Puedes crear tus propios scripts con el nombre del alias deseado y colocarlos en una carpeta incluida en la variable de entorno PATH.
  Realtek HD Audio Manager no se abre ¿Qué puedes hacer?

Creando enlaces simbólicos en CMD

Supón que quieres crear un ‘alias’ llamado python para ejecutar tu intérprete de Python. Puedes hacer algo así:

mklink python.exe "C:\ruta\a\python.exe"

Coloca el enlace en una carpeta que esté en tu PATH, y desde cualquier parte podrás lanzar tu alias.

Alias básicos con archivos .bat

La solución más habitual y versátil es crear un archivo .bat o .cmd para cada alias. Por ejemplo, para crear un alias ‘ls’ que muestre los archivos y carpetas actuales:

@echo off
dir /b %*

Guarda este archivo como ls.bat y ponlo en una carpeta que esté en el PATH (puedes añadir tu propia carpeta personalizada a PATH para no ensuciar system32).

Este método permite incluso simular alias para comandos que utilicen parámetros:

@echo off
del %*

Así, puedes crear alias como ls, cp, mv, rm, clear o cualquier otro que quieras importar de Unix/Linux.

Alias avanzados: scripts con lógica y parámetros

Los archivos .bat pueden recibir parámetros y contener lógica adicional. Por ejemplo, puedes crear un alias llamado grep.bat para buscar texto en archivos:

findstr %*

O uno para simular touch y crear archivos vacíos:

type nul > %*

Incluso puedes crear archivos .bat para abrir programas concretos como Notepad++ (nano.bat):

start "" "C:\Program Files\Notepad++\notepad++.exe" %*

Adaptando scripts y alias entre CMD y PowerShell

Muchos usuarios acostumbrados a Linux agradecen poder llamar a comandos como ls, cp, mv, rm, cat, grep o nano en Windows. Una práctica habitual es crear alias que simulan estos comandos, bien con scripts .bat para CMD o mapeando alias en PowerShell. De esta forma, puedes hacer que tus scripts funcionen en diferentes entornos.

cmd clean
Artículo relacionado:
Cómo borrar la pantalla en la consola de Windows: Todas las formas explicadas

Deja un comentario