martes, 28 de julio de 2009

Crear nuestra propia lista de comandos complejos: con el archivo /home/usuario/.bashrc y el comando alias

En ciertas ocasiones se suelen utilizar comandos que son difíciles de recordar o que son demasiado extensos, pero en linux existe la posibilidad de dar un nombre alternativo a un comando con el fin de que cada vez que se quiera ejecutar, sólo se use el nombre alternativo.

El archivo de configuración de la terminal /home/usuario/.bashrc es un archivo oculto en nuestro directorio de usuario, que puede ser muy útil para crear en él nuestra propia lista de comandos complejos útiles.

Esto se hace, abriendo este archivo y añadiendo al final una lista de comandos complejos que usemos a menudo, pero que no recordemos fácilmente, creando un "alias" o nombre fácil de acordarnos para un comando complejo; esto se hace precisamente usando en este archivo el comando alias, el cual se usa de la forma siguiente: alias nombre-del-alias='comando con argumentos a ejecutar'

Por ejemplo si añadimos estas lineas:  ( el número delante de ellas no hay que ponerlo, solo lo pongo para luego hacer mas fácil la explicación ) (En el nombre del alias no puede haber espacios: por ejemplo en vez de poner como nombre del alias, apagar el pc hay que poner solo apagar, o apagar-el-pc).

1- alias instala='sudo aptitude install'
2- alias desinstala='sudo aptitude remove'
3- alias apagar=’sudo shutdown -h now’

podremos desde la terminal:
con 1- teclear en la terminal: instala lista de paquetes: por ejemplo instala amule, gimp, abiword, y se instalaran esa lista de paquetes
o con 2-de la misma forma, tecleando: desinstala lista de paquetes: por ejemplo desinstala amule, gimp, abiword, y se desinstalaran esa lista de paquetes
o con 3- teclear apagar nos puede servir para apagar el sistema.

(Editado: he encontrado que puedo tener hasta tres formas de escribir un alias, por ejemplo:
# desinstalar paquetes con aptitude, alias 1
alias desinstala1='sudo aptitude remove'

# desinstalar paquetes con aptitude alias 2
alias desinstala2='sudo -u root aptitude remove'

# desinstalar paquetes con aptitude  alias 3
alias desinstala3='gksu aptitude remove' )

De esta forma podemos ir creando alias fáciles de usar para comandos complejos que no recordemos fácilmente, creando al final nuestra propia lista de comandos complejos.

No se deben guardar aquí los scripts que se usan seleccionando previamente un archivo o directorio sobre el que se quiere que actúe el script, sino los scripts que se ejecutan automáticamente sin seleccionar nada previamente.

¿ Pero y si creamos una lista muy larga, no se nos olvidaran ?: la solución esta en que una vez creada esa lista en el archivo /home/usuario/.bashrc la podemos tener siempre a mano, ejecutando en una terminal el comando alias: tecleas alias y te aparecen una lista de todos los alias que has ido creando en ese archivo.

Para tener una descripción mas extensa de lo que significa cada alias que has creado puedes tener en el directorio de usuario un archivo alias.txt en el que vayas copiando los alias que vayas creando, poniendo una descripción detallada de lo que hace cada alias creado en .bashrc  ; y para tener acceso a ese archivo puedes crear un alias que te lo abra: añadir al archivo .bashrc la linea: alias lista='gedit /home/usuario/alias.txt' con ello al teclear lista en la terminal se abrira el archivo alias.txt con la descripción extensa de todos los alias que hayas creado en .basrc

En este ejemplo los alias creados en /home/usuario/.bashrc serian:
alias lista='gedit /home/usuario/alias.txt'
alias instala='sudo apt-get install'
alias desinstala='sudo apt-get remove --purge'
alias apagar=’sudo shutdown -h now’

Y el contenido de alias.tx seria algo asi:
- alias lista:  abre el archivo /home/usuario/alias.txt
- alias instala: instalar una lista de paquetes: por ejemplo instala amule, gimp, abiword
- alias desinstala: desinstalar una lista de paquetes: por ejemplo desinstala amule, gimp, abiword
- alias apagar: apagar el pc ahora

De la misma forma se pueden añadir alias para comandos complejos como por ejemplo los de Conversión de formatos multimedia: Conversión de formatos multimedia

---------------------------------

3 comentarios:

  1. [...] 3-para abreviar la escritura de comandos se puede usar el método del comando “alias”. [...]

    ResponderEliminar
  2. [...] 2— En el archivo /home/usuario/.bashrc es un buen lugar para tener comandos complejos que no ocupen mas de una línea, usados con el comando alias, tal como se indica en el tema http://hatteras.wordpress.com/2009/07/28/ [...]

    ResponderEliminar
  3. Existe un programa para gestionar todos los comandos alias de tu linux lo podeis probar con

    sudo add-apt-repository ppa:david-destroyer2000/aliases
    sudo apt-get update
    sudo apt-get install aliases

    o bien de la url
    http://code.google.com/p/aliases/downloads/list


    --------------
    Editado por hatteras: usarlo bajo vuestra responsabilidad

    ResponderEliminar

A la vez que haces un comentario, por favor da una puntuación al tema: malo, normal, bueno o muy bueno.
Gracias.