Cómo crear y eliminar alias en Linux. Usaremos las distribuciones Red Hat y CentOS, aunque el procedimiento es válido para otras distribuciones como Debian, Ubuntu, Fedora, Suse o Mint. Mostramos cómo crear un nuevo alias, cómo modificar los alias por defecto que ya vienen en el sistema y cómo eliminar de forma permanente un alias.

Alias en Linux

Los alias son similares, salvando las distancias, a los accesos directos de Windows. Permiten representar un comando (o conjunto de comandos) ejecutados con o sin opciones personalizadas.

Los alias permiten reemplazar un comando o serie de comandos con otros personalizados. Su uso principal es el de abreviar órdenes o también para añadir argumentos de forma predeterminada a una orden que se usa con mucha frecuencia.

Por ejemplo, imaginemos que en nuestro equipo Linux usamos el siguiente comando con mucha frecuencia:

ls -lah

Si queremos abreviar el comando anterior en una sola palabra personalizada, podremos crear un alias llamado, por ejemplo «lista», que ejecutaría el comando anterior:

lista

Si tenemos el alias «lista» que ejecuta «ls -lah», al ejecutar «lista» en la línea de comandos, ejecutaría, a su vez, ls -lah.

Alias por defecto en Linux CentOS 7

En un equipo con Linux CentOS 7 en su distribución Minimal (sin modo gráfico), estos son los alias que se crean por defecto, que son permanentes, y que podemos usar:

Para obtener los alias anteriores es suficiente con ejecutar el comando:

alias

Alias por defecto en Linux CentOS 7

Dichos alias se pueden modificar e incluso añadir nuevos editando el fichero .bashrc, que para el usuario root suele estar en:

/root

y para el resto suele estar en:

/home/nombre_usuario

Dicho fichero está oculto, no se mostrará con un ls, habrá que hacer un ls -lah:

En Linux CentOS 7 tiene el siguiente contenido (el fichero /root/.bashrc):

Vemos que tiene algunos alias ya creados por defecto, que podemos eliminar o modificar. Por ejemplo, vemos que tiene el alias con nombre cp, y que ejecuta cp -i, por lo tanto, cada vez que usemos el comando cp, en realidad añadirá el parámetro -i aunque nosotros no lo incluyamos. Si queremos modificar este comportamiento, será suficiente con comentar esta línea, añadiendo un # delante:

Y guardar el contenido del fichero, a partir de ahora, al ejecutar cp, no se incluirá el parámetro -i.

Y en este fichero también vemos que cargará los alias que haya en el fichero /etc/bashrc.

Crear un alias temporal en Linux

Para crear un alias temporal en Linux (se eliminará al cerrar la sesión) , en primer lugar necesitaremos saber qué comando ejecutará nuestro alias. Por ejemplo, supongamos que queramos ejecutar el comando «ls -lah» y queremos que nuestro alias se llame «lista». Para crearlo ejecutaremos el siguiente comando:

alias lista=’ls -lah’

Mientras no cerremos sesión, podremos usar el comando «lista», que ejecutará el comando «ls -lah»:

Crear un alias temporal en Linux

Si cerramos la sesión este alias se perderá. A continuación explicaremos cómo hacer persistente un alias en Linux.

Usar fichero personalizado de alias en Linux

Podemos usar un fichero separado para crear nuestros alias personales, de forma que podremos copiarlo a otros equipos y tener siempre nuestros alias disponibles. Para ello seguiremos los siguientes pasos.

En primer lugar crearemos el fichero de alias personales en la carpeta del usuario, que normalmente es:

/home/nombre_usuario

Dicho fichero deberá contener un punto al principio del nombre. Para crearlo ejecutaremos:

nano /home/alonso/.alias_personal

Donde alonso será el nombre del usuario para el que queramos crear los alias y .alias_personal será el fichero que contendrá todos nuestros alias. Introduciremos en el fichero .alias_personal todos los alias que queramos para el usuario, con el formato: alias nombre_alias=’comando’:

alias lista=’ls -lah’

Usar fichero personalizado de alias en Linux

Guardaremos los cambios, en el caso de nano pulsando en Control + O y cerraremos pulsando Control + X.

A continuación, para que el sistema Linux reconozca este fichero como fichero de alias, deberemos agregar las siguientes líneas al fichero .bashrc, que suele estar en la carpeta home del usuario (en la misma donde hemos creado el fichero anterior), así que para editarlo ejecutaremos:

nano /home/alonso/.bashrc

Al final del fichero .bashrc agregaremos las siguientes líneas:

Usar fichero personalizado de alias en Linux

Guardaremos los cambios, en el caso de nano pulsando en Control + O y cerraremos pulsando Control + X.

De esta forma, al iniciar sesión, se leerán todos los alias contenidos en nuestro fichero .alias_personal y quedarán listos para su uso.

Si no hemos cerrado e iniciado sesión, los alias nuevos agregados no funcionarán, si ejecutamos uno de ellos, por ejemplo:

lista

Nos devolverá el error: -bash: lista: no se encontró la orden

Usar fichero personalizado de alias en Linux

Si queremos que funcionen sin cerrar sesión podemos ejecutar el fichero .bashrc, con el comando:

exec bash

De esta forma se recargará el fichero .bashrc, el cual, lee, a su vez, el fichero de alias que hemos creado .alias_personal y por lo tanto tendremos los alias personalizados disponibles:

Usar fichero personalizado de alias en Linux

Los alias que agregamos al fichero .alias_personal quedarán persistentes, aunque se cierre sesión o se reinicie el equipo, seguirán disponibles.

Es importante mencionar que si creamos el fichero de alias .alias_personal con el usuario «root», por ejemplo, estará disponible para el usuario al que se lo hayamos creado y se le cargarán los alias, pero no podrá modificarlo, al ser el «root» el propietario. En este ejemplo hemos creado el fichero de alias .alias_personal con el usuario «root» a modo de prueba y también con el usuario que los va a usar «alonso».

Crear alias con varios comandos en Linux

Podemos agregar un alias en Linux que ejecute varios comandos. Para ello podemos usar los concatenadores habituales de Linux:

  • comando1 | comando2: la salida de la ejecución del comando2 será la entrada del comando. Es decir, el comando1 se ejecutará a partir del resultado de salida del comando2.
  • comando1 && comando2: en este caso se ejecutará primero el comando1, si da error no se ejecutará el comando2, si no da error se ejecutará el comando2.
  • comando1 ; comando2: se ejecutará el comando1 y el comando2, independientemente del resultado que dé el comando1.
  • comando1|| comando2: se ejecutará el comando2 solo si el comando1 dio error.
  • comando1 & comando2: se ejecutarán ambos comandos (o los que haya) de forma simultánea.

Así pues, al crear los alias en nuestro fichero podremos usar estos concatenadores y con un único alias ejecutar varios comandos. Antes de añadir el alias es recomendable probar el comando en la línea de comandos para ver que funciona correctamente, por ejemplo, estos comandos:

cat /proc/cpuinfo | grep -i ‘Model’

El comando anterior devuelve el modelo de procesador el equipo.

ifconfig ens192 | grep -oiE ‘([0-9A-F]{2}:){5}[0-9A-F]{2}’

El comando anterior, para el adaptador ens192, devuelve su dirección MAC.

Para agregar estos comandos a un alias cada uno, usaremos las comillas dobles, dado que el propio comando usa las comillas simples, quedando en el fichero .alias_personal de la siguiente forma:

alias procesador=»cat /proc/cpuinfo | grep -i ‘Model'»
alias mac=»ifconfig ens192 | grep -oiE ‘([0-9A-F]{2}:){5}[0-9A-F]{2}'»

Crear alias con varios comandos en Linux

Guardando los cambios y ejecutando el comando:

exec bash

Tendremos disponibles los nuevos comandos personalizados procesador y mac:

Crear alias con varios comandos en Linux

Eliminar alias en Linux de sesión temporal y permanente

Para eliminar un alias de sesión (temporal) podremos ejecutar el comando:

unalias nombre_alias

Donde «nombre_alias» será el nombre que le hayamos asignado al alias al crearlo.

Por ejemplo, si hemos creado el alias «lista», con el comando:

alias lista=’ls -lah’

Podremos eliminarlo con el comando:

unalias lista

Eliminar alias en Linux de sesión temporal y permanente

El comando unalias únicamente eliminará el alias en la sesión actual. Si cerramos sesión y volvemos a acceder, se le cargarán al usuario todos los alias permanentes que tenga. Para eliminar un alias de forma permanente, deberemos modificar el fichero donde se encuentre dicho alias, bien sea en un fichero personalizado (como hemos explicado en pasos anteriores) o bien en un fichero estándar de Linux para el usuario.

Si el alias que queremos eliminar definitivamente está en el fichero .bashrc del usuario, lo editaremos y comentaremos (o eliminaremos) la línea que incluya dicho alias. Por ejemplo, para eliminar el alias que viene por defecto ya creado en distribuciones de Linux CentOS:

Editaremos el fichero correspondiente con el comando:

nano /root/.bashrc

Y comentaremos (o eliminaremos) la línea que crea el alias:

Eliminar alias en Linux de sesión temporal y permanente

En nuestro caso hemos comentado la línea, añadiendo una almohadilla delante #, por si lo necesitamos en un futuro, solo tendríamos que volver a editar el fichero y eliminar la almohadilla.

A partir de ahora, cuando iniciemos sesión con el usuario, ya no tendrá el alias «cp=cp -i».

Modificar un comando existente en Linux y personalizarlo con un alias

Los alias permiten modificar comandos de Linux existentes, dado que a un alias se le puede asignar el nombre de un comando existente. Esto es útil si queremos cambiar el comportamiento de algún comando. Por ejemplo, si queremos que el comando rm, que elimina ficheros, siempre pida confirmación antes de eliminar un fichero, podremos agregar un alias con el nombre rm (el mismo que el comando) y especificar su parámetro -i correspondiente. Para ello, editaremos el fichero de los alias, o bien el estándar que viene con el usuario .bashrc o bien el fichero personalizado que hayamos creado (como hemos explicado en pasos anteriores) y añadiremos la línea:

Guardaremos los cambios y ejecutaremos el siguiente comando, como siempre, para que el alias esté disponible comando:

exec bash

A partir de ahora, cada vez que ejecutemos un rm para eliminar ficheros, se le incluirá el parámetro -i y mostrará confirmación para eliminar el fichero:

Modificar un comando existente en Linux y personalizarlo con un alias

Cabe destacar que el alias anterior ya viene creado en sistemas Linux CentOS. Si queremos revertir este comportamiento, solo tendremos que comentar la línea de este alias en el fichero que lo contenga.