Latinoamérica
de.novatoanovato@gmail.com

Comando -alias-

Dedicado al nuevo usuario de software libre

Comando -alias-

Comando alias

En informática un alias o comando alias es una herramienta disponible para varios intérpretes de comandos tales como los shells de Unix, 4DOS/4NT y Windows PowerShell. Estos permiten reemplazar una orden, o una serie de ordenes, por una palabra clave. Podríamos verlos como una especie de atajos de comandos. Al ser GNU/Linux un sistema operativo del tipo Unix, este se encuentra disponible en su interprete, para la mayoría de las distribuciones (por no decir que en todas), por defecto.

Si bien los alias son comúnmente utilizados para abreviar órdenes, instrucciones o comandos, también se utilizan para añadir argumentos y/o parámetros de forma predeterminada a una orden en particular que se use con mucha frecuencia.

Objetivo de este artículo

El principal objetivo de este artículo es que aprenda qué es un alias, para qué sirven y cómo utilizarlos por medio de su sintaxis, opciones y parámetros. También aprenderá la diferencia entre alias temporales y alias permanentes para el usuario en sesión o todos los usuarios del sistema y cuando utilizarlos según nuestras necesidades. Por otra parte, veremos como listar todos los alias creados en el sistema operativo para poder refrescarlos y/o modificarlos. Por ultimo veremos como eliminarlos de forma manual.

Sintaxis

El comando alias responde a la siguiente sintaxis:

alias [opciones] [ NombreDelAlias = "Comando o Cadena" ]

En la practica y con mayor claridad, un alias en GNU/Linux se crea de la siguiente manera:

Siendo:

  • alias: El comando que llamamos.
  • NombreAlias: La palabra clave que utilizaremos como alias (El nombre que le asignaremos al alias).
  • «Comando o cadena»: La orden o conjunto de ordenes o cadenas de caracteres con la que vamos a «cargar» a nuestro alias.

Tipos de alias

Antes de avanzar con ejemplos prácticos que nos permitan aprender a operar con alias, es necesarios mencionar que es posible clasificar los alias en dos tipos diferentes, estos determinados por la forma en la que fueron creados pueden ser : alias temporales y alias permanentes. Pudiendo también clasificar a los alias permanentes según si fueron creados para un usuario en particular o para todos los usuario del sistema.

A continuación, analizaremos ambos casos de forma individual para que pueda comprender la diferencia entre ambos tipos de alias.

Alias temporales

¿Qué son los alias temporales?

Los alias temporales son aquellos que se crean para que duren una sesión. Con esto queremos decir que luego de ser creado, podemos hacer uso del alias hasta que cerremos la sesión con la que creamos el alias (cerremos la consola). Por lo que al iniciar una nueva sesión (abramos nuestra consola nuevamente), ya no dispondremos del alias creado una sesión que haya sido cerrada. Teniendo esto en claro, continuemos.

¿Como crear un alias temporal?

Para crear un alias temporal, haremos uso de sintaxis del comando alias. Recurriendo a un ejemplo simple, utilizaremos una de las instrucciones más comunes y quizás una de las de mayor uso para usuarios de distribuciones GNU/Linux, la instrucción de actualización.

Nota: Como soy usuario de Archlinux, el gestor de paquetes de la distribución es pacman, debes tener esto en cuenta si es que utilizas otra distribución que no sea Archlinux ni derivada de esta, ya que si quieres acudir al mismo ejemplo, no te funcionará.

En este caso vamos a crear el alias, actualizar, al que le asignaremos la linea de comando completa sudo pacman -Syyu utilizada en Archlinux y derivados para: sincronizar, forzar sincronización de la base de datos local de paquetes con la de los repositorios y actualizar aquellos paquetes para los que se disponga una nueva versión. siendo pacman su gestor emblema, como ya hemos mencionado.

En la consola de comandos y basándome en la sintaxis del alias, escribo en la terminal la siguiente linea:

alias actualizar="sudo pacman -Syyu"

Donde:

  • alias: Es el comando.
  • actualizar: Es la cadena de caracteres que se comportara como alias de la instrucción a ser asignada.
  • «sudo pacman -Syyu»: Es la instrucción que asignaremos al alias (Importante es que este entre comillas la instrucción completa).

Habiendo ejecutado la linea, nuestro alias temporal actualizar ya debería estar creado. Para confirmarlo, ejecutamos el alias creado «actualizar» directamente como si fuese un comando y solo con fines comparativos ejecutaremos tras esta orden la instrucción directamente tal como lo haríamos de forma habitual sudo pacman -Syyu.

NOTA: Insisto, si estas utilizando otra distribución GNU/Linux que no sea Archlinux, ni derivada de esta, ten en cuenta usar el gestor de paquetes que corresponda, si vas a realizar la misma prueba.

Como podemos observar, el alias creado actualizar ejecuta la orden sudo pacman -Syyu. Este alias permanecerá disponible mientras no cierres la terminal. Una vez cerrada, el alias que hemos creado se suprimirá automáticamente.

Alias permanentes

¿Qué son los alias permanente?

Los alias permanentes son aquellos que se crean para que perduren un nuestro sistema operativo aun después de un cierre de sesión o un reinicio de sistema. Con esto queremos decir que, luego de ser creado, estos formaran parte de nuestro sistema operativo de forma permanente y solo podrán ser eliminados de forma manual por algún usuario que cuente con los permisos necesarios, claro.

¿Cómo crear un alias permanente?

Para crear un alias permanente es necesario editar el archivo de configuración de nuestra shell e incrustar la orden completa en el o sea, el alias que deseamos crear.

Es necesarios tener en cuenta que dependiendo del tipo del shell que tengamos en uso, sera el nombre del archivo de configuración de esta. También debemos tener en cuenta que cuando creamos un alias permanente, podemos hacerlo para el usuario en sesión, o para todos los usuarios del sistema. Ambos archivos de configuración se encuentran en ubicaciones diferentes y dependiendo de en cual agreguemos el alias, se definirá a quien le pertenece.

Archivos de configuración del shell

A continuación listo las direcciones de los archivos de configuración según el que tipo de shell al que corresponden, dependiendo de cual es la que estamos utilizando, sera la que debamos editar. Pero… ¿Cómo sabemos cual es la shell que estamos utilizando? Para saber esto, podríamos ejecutar la siguiente instrucción:

echo $SHELL

En mi caso estos ocupando shell Bash. ¿Cual es la shell que estas utilizando?

También los separo en dos grupos, uno con la ruta de los archivos de configuración de las shells que afectan al usuario en sesión y otro con la rutas de los archivos de configuración que afectan a todos los usuarios del sistema. Puede que les sea útil.

Para el usuario en sesión

Podrás encontrar, según el estándar de jerarquía de directorios FHS, los archivos de configuración de las diferentes shell que afectan al usuario en sesión ubicados en:

  • Zsh /home/usuario/.zshrc
  • Csh /home/usuario/.cshrc
  • TCsh /home/usuario/.tcshrc
  • Korn /home/usuario/.kshrc
  • Bourne-Again /home/usuario/.bashrc

Nota: El nombre del directorio usuario, se corresponde que el directorio del usuario en cuestión. También podríamos indicarlos con rutas relativas:

  • Zsh ~/.zshrc
  • Csh  ~/.cshrc
  • TCsh  ~/.tcshrc
  • Korn ~/.kshrc
  • Bourne-Again ~/.bashrc
Para todos los usuarios del sistema

Por otra parte, encontraremos los archivos de configuración según la shell que estamos utilizando y que afecten a todos los usuarios del sistema, nombrados de forma diferente y ubicados en:

  • Zsh /etc/zsh.zshrc
  • Csh /etc/csh.cshrc
  • TCsh /etc/tcsh.tcshrc
  • Korn /etc/ksh.kshrc
  • Bourne-Again /etc/bash.bashrc

Entendiendo que debemos editar según a que usuarios queremos afectar, veamos como crear aun alias para cada caso.

¿Cómo crear un alias permanente solo para el usuario en sesión?

Cuando creamos una alias para el usuario en sesión, este solo podrá ser usado por ese usuario. En mi caso como ya vimos estoy ocupando Shell Bash, es importante saber con que tipo de shell estamos trabajando para identificar el nombre del archivo de configuración del interprete que tenemos que modificar.

En el apartado anterior vimos que el archivo de configuración por defecto para shell Bash es nombrado como .bashrc y para crear un alias para el usuario en sesión deberíamos editar .bashrc, pero el que se encuentra ubicado en el directorio /home/usuario y agregar allí el o los alias que deseemos. Para editarlo y agregar nuestro alias ejecutamos:

nano /home/usuario/.bashrc o nano ~/.bashrc

Si nos encontramos en el directorio del usuario, simplemente ejecutamos nano .bashrc sin indicar la ruta absoluta.

nano .bashrc

Caso contrario, debe ser indicada la ruta completa.

Una vez abierto el archivo .bashrc, incrustamos el alias que deseamos crear. Utilizaremos el mismo ejemplo que para el alias temporal añadiendo la linea:

alias actualizar="sudo pacman -Syyu"

Una vez incrustado, guardamos los cambios y reiniciamos la consola para que los cambios surjan efecto. De esta forma, el alias ya será permanente para el usuario en sesión. Una vez hecho esto, ejecutamos el alias que hemos creado.

actualizar

Pero… ¿Puedo utilizar este alias como usuario root?

¿Cómo crear un alias permanente solo para todos los usuarios del sistema?

Si un usuario en sesión desea crear un alias permanente que afecte a todos los usuarios del sistema, deberá incrustar el alias en el fichero de configuración que corresponde al tipo de shell que este usando, pero ubicado en una direccion diferente a la utilizada en el caso anterior.

El estándar de jerarquía de directorios FHS, ubica los archivos de configuración del sistema en el directorio /etc, por lo tanto ubicaremos en éste directorio el archivo de configuración de las shells que afectan a todo el sistema. Cabe señalar que para editar este fichero se necesita tener privilegios de administración.

Por lo tanto ejecutamos la linea sudo nano /etc/bash.bashrc, siendo /etc/bash.bashrc, la ruta absoluta del archivo de configuración de Shell Bash que afecta a todos los usuario del sistema.

sudo nano /etc/bash.bashrc

Confirmando los privilegios se nos abrirá el siguiente archivos de configuración.

Donde agregamos el alias que venimos utilizando en los ejemplos anteriores (alias actualizar="sudo pacman -Syyu") en la ultima linea, guardamos y ya podrán hacer uso del alias todos los usuarios del sistema. Como root es otro usuario del sistema, probemos ejecutar el alias recién creado con el para verificar que el alias fue creado como queriamos.
NOTA: Si deseas probarlo es importante saber que debemos cerrar la consola y abrirla nuevamente para que levante la nueva configuración.
Como podemos observar, el alias ya se encuentra disponible para todos los usuarios del sistema.

Opciones del comando alias

El comando alias cuentas con una sola opción, esta nos permitirá visualizar todos los alias creados en nuestro sistema.

Listar alias creados

El comando alias nos brinda en su sintaxis la opción -p (print) que nos permite obtener por la salida estándar todos los alias creados, ya sean temporales como los permanentes para el o todos los usuarios del sistema operativo. Para listar, nos basta con ejecutar:

alias -p

Eliminar alias

Así como es posible crear distintos alias, es posible eliminarlos. Vemos como llevar a delante esta tarea para cada tipo de alias.

Eliminar alias temporal

En el caso de querer eliminar un alias temporal nos basta con simplemente cerrar la consola. Una vez volvamos a ejecutar nuestra terminal, el alias ya no existirá.

Eliminar alias permanente para el usuario

En el caso de querer eliminar un alias creado para un usuario en particular, deberemos editar el archivo de configuración de la shell de ese usuario en cuestión y borrar la linea del alias que deseas suprimir. Para este ejemplo, eliminaremos el alias creado para el usuario que pusimos de ejemplo de ejemplo.

Veamos que existe:

cat .bashrc

Editemos el fichero y eliminemos la linea del alias:

nano .bashrc

Una vez guardados los cambio y reiniciado el interprete, el alias creado para el usuario que eliminamos ya no existe y por lo tanto, no debería ejecutarse, probemos:

actualizar

Pero… ¿Cómo?, ¿Porque se ejecuta el alias si ya lo habíamos eliminado?. Aun si verificamos con el comando cat, el alias no existe para el usuario, ya no esta en .bashrc. ¿Qué paso?.

Bueno compa, lo que paso es que habíamos creado el mismo alias para todo los usuarios del sistema también, si queremos que deje de hacer efecto, es necesario eliminarlo de allí.

Eliminar alias permanente para todos los usuarios

Del mismo modo que en el caso anterior, para eliminar un alias, en este caso creado para todos los usuario, necesitamos editar el archivo de nuestra shell que afecta a todos los usuarios del sistema operativo.

cat /etc/bash/bashrc

Vemos que el alias se encuentra al final del archivo. Editemos para borrarlo y recuerda que requiere de permisos de administrador editar un archivo como este:

sudo nano /etc/bash.bashrc

Una vez eliminada la linea del alias, guardad los cambios y reiniciado la consola, probamos que el alias haya sido eliminado de forma definitiva.

actualizar

Y de esta forma habremos eliminado el alias que afecta a todos los usuarios del sistema. Así como lo hicimos con el alias que creamos y nombramos como actualizar, podremos hacerlos con cualquier alias, solo debemos saber en que fichero crearlo o eliminarlos para que afecte a el usuario o a todos los usuarios.

Otra forma de eliminar alias, es utilizando el comando unalias, te comparto un articulo dedicado a este comando.

Puedes seguirnos en:

Ayudanos a mantener el sitio con una contribución.
Muchas gracias!

Espero sea de utilidad.
Saludos, Cristian Bellini.

 

4 comentarios

  1. ERNESTO MENDOZA dice:

    excelente aprendizaje gracias

  2. mola, me lo apunto socio, gracias.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

cuatro × 1 =