BASH Alias es un atajo para ejecutar comandos usando algún mapeo. Es una forma de crear algunos comandos de acceso directo para tareas repetitivas y múltiples. Creamos un alias en un entorno BASH en archivos específicos. También podemos incorporar funciones BASH, variables, etc. para hacer el Alias más programático y flexible.
¿Qué es un alias de BASH?
Un BASH Alias es un mapa de comandos con los conjuntos de comandos o funciones que se pueden usar como acceso directo en la línea de comandos para un entorno BASH. Bash Alias permite agregar múltiples funciones en un solo comando y también evita comandos repetitivos o grandes en un simple comando de acceso directo. BASH Alias es un mapa de comandos de acceso directo con los conjuntos de comandos que se almacenan en un archivo llamado .bash_profile o .bashrc con una sintaxis específica. Los alias también se pueden combinar con la sintaxis y la semántica de BASH para que los accesos directos sean más personalizables y flexibles.
Funcionamiento de un Alias
La palabra clave alias reemplaza el comando con la string que puede ser un conjunto de comandos o funciones. El alias se define en ~/.bashrc o ~/.bash_profile . Estos archivos se cargan en el entorno de shell y, por lo tanto, los comandos enumerados en el alias también se cargan y están listos para ejecutarse. Por lo tanto, el alias funciona con la configuración BASH.
Una vez cargados los alias o los mapas de comandos, el usuario puede interactuar e ingresar los comandos. Si se ejecuta el comando en el alias, el intérprete BASH reemplaza el alias del comando con la string de comandos y, por lo tanto, se logra el funcionamiento deseado del alias o comando.
Veremos cómo crear un BASH Alias en la siguiente sección.
¿Cómo crear un Alias?
Para crear un alias, necesitamos crear un archivo llamado bash_profile o bashrc . Este archivo debe estar en el directorio raíz y debe estar oculto para evitar el mal manejo de su contenido. Dentro de este archivo, creamos un alias que es básicamente un mapa de comandos y los conjuntos de comandos/funciones que se ejecutarán como acceso directo.
Creando .bashrc o .bash_profile
En primer lugar, puede ubicar su directorio raíz, abrir una terminal o símbolo del sistema y escribir el siguiente comando:
Para Linux/mac OS:
cd ~
Para ventanas:
Si usa terminal git bash o Powershell
cd ~
Debería estar ahora en el llamado directorio raíz de su entorno.
Después de pasar al directorio raíz, debe crear un archivo llamado .bashrc o .bash_profile en el propio directorio raíz. Puede crear el archivo sin importar cómo cree el archivo según sus preferencias, pero para mantener una forma estándar para la mayoría de los sistemas operativos, el siguiente comando funcionará:
echo >> .bash_profile
O
echo >> .bashrc
Esto creará un archivo si no está presente, pero no hará nada si el archivo ya se creó y tiene contenido.
Si no desea moverse al directorio raíz, cree y escriba en el archivo, puede acceder al directorio raíz con » ~/ «. Puede crear el archivo en cualquier otro directorio o ruta en su sistema operativo. El siguiente comando crea el archivo sin cambiar su directorio actual.
echo >> ~/.bash_profile
Crear una función
Podemos crear una función independiente en nuestro bashrc u otros scripts de bash y vincularlos aún más con un comando de acceso directo llamándolos. Para crear una función en BASH, podemos usar una sintaxis simple como la siguiente:
function x() { # statements }
O
x() { # statements }
Entonces podemos escribir la lógica para el comando en este bloque de funciones. Para este ejemplo, podemos crear una función para crear un directorio y cd o movernos a ese directorio. Por lo tanto, podemos escribir el código dentro del bloque de funciones de la siguiente manera:
function x() { mkdir $1 cd $1 }
El $1 es un parámetro posicional para tomar argumentos de la línea de comandos y analizarlos en una función o en un script como una variable. Puedes conocerlos en este artículo . En pocas palabras, hacen que la secuencia de comandos o el alias sean más dinámicos y permiten que el usuario ingrese más fácilmente directamente desde la línea de comandos.
Creando el alias de BASH
Ahora, tenemos el bashrc o bash_profile creado, podemos comenzar con la creación de alias. Para crear un alias, necesitaremos tres cosas, la palabra clave alias para indicar que la siguiente oración creará un alias, el comando o una palabra abreviada que se usará para ejecutar la última pieza, es decir, los comandos que se ejecutarán. Los comandos dentro de un alias deben ser ejecutables desde el entorno Shell/BASH.
La sintaxis de un alias es la siguiente:
alias command="sets of commands/functions"
Como se dijo anteriormente, necesitamos tres piezas de información, es decir, la palabra clave alias, el comando abreviado y los conjuntos de comandos o funciones que se ejecutarán.
¿Cómo establecer un alias de Bash?
Podemos acceder al valor del último comando como un tipo de devolución usando el $? fuera de la función después de la llamada a la función. Pero para ejecutar comandos simplemente podemos llamar a las funciones
Tomemos un ejemplo para crear un alias, supongamos que queremos crear un directorio y pasar a él. Tendremos que ejecutar dos comandos, es decir, mkdir y cd . Este puede ser un escenario para crear un alias. Podemos enstringr comandos en una función o comandos de alias para evitar escribir todos los comandos.
El alias se vería así:
alias md='x(){ mkdir "$1"; cd "$1"; }; x'
La palabra clave alias indica el intérprete BASH para cargar la variable del mapa como un comando. El comando se llama » md «, que se asigna a una función «x» . La función x crea el directorio con el nombre pasado al comando md y cambia el directorio a él . La función se define y llama al final para mantenerla simple y directa.
La otra forma de hacer el mismo truco es crear una función de forma independiente en otro lugar y llamar desde el alias. El siguiente alias muere igual pero escrito de forma diferente:
alias md='x' x(){ mkdir $1 cd $1 }
Esto se ve mucho legible y limpio. Esto también se puede usar para agregar sintaxis y semántica BASH como bucles, condiciones y otros enfoques programáticos para hacer que el alias sea más personalizable y flexible.
Diferencia entre comillas simples y dobles
Las comillas simples y dobles utilizadas en las declaraciones de alias tienen cierta importancia y deben usarse según los requisitos. Usamos comillas dobles para expandir el valor de la variable en BASH, es decir, para analizar realmente el valor del nombre de la variable. Si solo usamos comillas simples, el valor de la variable no se muestra y solo el nombre de la variable se analiza tal cual.
Por ejemplo en la sentencia:
#!/bin/usr/env bash p=125 echo "The value of variable p is $p" echo 'The value of variable p is $p'
En este ejemplo, el valor de la variable p solo se expande o analiza en el comando si lo incluimos entre comillas dobles. Esto también se aplica cuando se trabaja con un alias en los archivos bashrc o bash_profile, necesitamos usar comillas dobles para expandir el valor de la variable.
Estructura de un Alias
Después de crear un alias, podemos entender la estructura de un alias con un poco de profundidad. Como se discutió anteriormente, tenemos tres partes en la creación de un alias:
palabra clave de alias
La palabra clave alias en BASH reemplaza una string con otra string. El comando abreviado es la string que se usará en lugar de la string del lado derecho del comando. Por lo tanto, la palabra clave alias actúa como abreviatura de una string que es un conjunto de comandos o funciones.
dominio
El comando es la abreviatura que se usará en la terminal. Podemos usar cualquier comando o string evitando los comandos reales como cd, mkdir, rmdir, touch, echo, etc., que pueden entrar en conflicto con ellos y provocar un comportamiento no deseado.
comandos/funciones
Estos son los conjuntos de comandos que se ejecutarán cuando se ingrese el comando en el alias. Pueden ser funciones BASH, comandos de shell o cualquier otro conjunto de comandos que sea compatible con el entorno de Shell.