[h]Crear un comando personalizado gracias a los “aliases”[/h]
https://www.wifi-libre.com/img/members/3/aliases_1.jpg
Hace unos días atrás hemos hablado de aliases en este tema para solucionar un problema de librería/dependencia : Reaver modificado para Pixie Dust # respuesta 52
El problema es el siguiente : para poder usar reaver o wash en unas viejas versiones de ubuntu debemos cambiar una librería por una más antigua.
Librería que se actualizara sola cada tantos con lo cuál deberemos repetir esta operación muchas veces.
Para simplificarse la vida atim ha creado su propio comando con un alias que ha llamado “viejo”
Así cuando teclea “viejo” en consola se sobrescribe la librería en uso con la librería mas viejas.
Es un ejemplo concreto que enseña como los alias permiten personalizar nuestro interprete de ordenes.
[h]Definir un alias[/h]
Una alias se define como una variable.
La variable nos permite hacer lo que se llama : “sustitución de texto.”. Es muy simple :
[list=1]
]Asociamos un contenido a un nombre. /]
]Cuando invocaremos más adelante este nombre entrará en acción el contenido que hemos definido/]
[/list]
1. Asociar un contenido a un nombre.
Dicho de otra forma “definir una variable”
Se hace con el símbolo =
nombre="contenido"
(el uso de comillas simple o doble permite tenr espacios en el contenido)
Para definir una variable “saludar” que contenga “¡Hola mundo!” hacemos así
saludar="¡Hola mundo!"
2. Invocar la variable
Se hace con el símbolo $ seguido del nombre de nuestra variable.
Acabamos de definir “saludar” y la vamos a usar con el comando echo (permite escribir en consola)
echo $saludar
y obtenemos
¡Hola mundo!
El nombre “saludar” (la variable) ha sido substituido por el contenido ¡Hola mundo! gracias al uso de la instrucción para invocación de variable : $ ( el dolar = el valor )
https://www.wifi-libre.com/img/members/3/aliases_2.jpg
Una vez que sabemos definir una variable sabemos hacer un alias sabiendo que :
- **Se define del mismo modo que una variable con el símbolo = **
-
No necesita el símbolo $ para ser invocado. (es como un comando )
Y que para definir nuestro alias debemos escribir “alias” antes del nombre del alias y su contenido.(para que el interprete de ordenes no piensa que se trata de una vulgar variable)
Así
alias nombre='contenido'
Para escribir ¡Hola mundo! en consola con el alias “saludar”
alias saludar='echo "¡Hola mundo!"'
Para ejecutar mi alias solo tengo que poner su nombre (saludar) y prensar
https://www.wifi-libre.com/img/members/3/aliases_4.jpg
[h]Definir un alias de forma permanente[/h]
Si definimos un alias en una consola solo vale en la consola dónde lo hemos definido.
El uso esta muy limitado y nuestro comando casero no tiene mucho interés.
Para que podamos usar nuestro alias en toas consolas y después cada reinicio debemos añadir lo al fichero bashrc
Abrimos el fichero con un editor de texto :
gedit ~/.bashrc
Ahora voy a añadir un alias, un poco más útil que escribir “¡Hola mundo!”
Cuando actualizamos nuestro sistema en consola debemos hacer
sudo apt-get update
Y luego
sudo apt-get ugrade
podemos luego limpiar un poco sudo apt-get autoremove
sudo apt-get autoclean
Así que voy a crear un alias llamado actualizar que ejecutará los cuatros comandos
alias actualizar=' sudo apt-get update && sudo apt-get upgrade -y && sudo apt-get autoremove -y && sudo apt-get autoclean -y'
Con && podemos añadir otra secuencia de orden y con - y respondemos “Yes” automáticamente cuando se nos pide confirmación para ejecutar los comandos
Me voy al final del fichero, pongo mi alías y guarda los cambios.
https://www.wifi-libre.com/img/members/3/aliasses_7.jpg
Ahora activamos el nuevo alias con
. ~/.bashrc
Si ejecutamos “actualizar” se llevarán a cabo las cuatro tareas
https://www.wifi-libre.com/img/members/3/aliases_8.jpg
¡Ya sabéis crear vuestro propios comandos!..
[h]Para quitar un alias permanente[/h]
Ejecutamos en consola el comando unalias de este modo
unalias nombre
Para eliminar el comando que acabo crear (“actualizar”) debo ejecutar
unalias actualizar
Y luego borrar la linea que hemos añadido al fichero bashrc
Para saber más sobre los aliases y ver unos ejemplos prácticos interesantes :
[list=*]
]alias - man page/]
]30 Handy Bash Shell Aliases For Linux / Unix / Mac OS @ Nixcraft/]
]How do I create a permanent Bash alias? @ forum Ubntu/]
[/list]