Crear sus propias ordenes con los aliases

[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. :slight_smile:

[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]