Como configurar el prompt de la Terminal de Ubuntu

La idea de escribir este articulo surgió a raíz de leer uno en el blog de Diego Macias en el cual mostraba como personalizar el prompt de la Terminal. Dicho articulo esta muy bien pero va enfocado a los usuarios de Arch y yo he decidido hacer uno enfocado a los usuarios de Ubuntu. Podeis acceder al articulo de Diego pinchando en el siguiente enlace:

Siempre me he conformado con el prompt que venia por defecto, pero Diego me ha picado y he querido personalizarlo un poco, nunca lo habia hecho y me ha gustado el resultado final que me parece mas útil que estéticamente bonito, los colores elegidos son los de mi equipo de futbol, el F.C. Barcelona. Vamos a ver como personalizar el prompt de Ubuntu e intentare explicarlo de la mejor manera posible y con ejemplos. Con Ubuntu instalado la Terminal tiene un aspecto algo parecido a la siguiente imagen:

prompt-ubuntu

A mi me gustan las cosas sencillas pero estaría bien que la Terminal mostrase un poco mas de información ademas de personalizarla un poco a nuestro gusto. Durante este articulo os voy a mostrar paso a paso como conseguir el prompt que yo uso, es muy sencillo y lo podéis ver al final del post, ademas también os mostrare muchas mas opciones para que vosotros hagáis el vuestro.

Antes de meternos en faena me gustaría hacer un apunte, el prompt es tan personalizable como queramos y como nuestra paciencia nos lo permita, con tiempo y dedicación se pueden hacer diabluras, en mi caso como me gusta las cosas sencillas, voy a hacer un prompt sencillo.

Para ir viendo el prompt que vamos diseñando y ver lo cambios según los hagamos tenemos que tener abierta la Terminal de Ubuntu y teclearemos el siguiente comando:

PS1=" "

Entre las primeras dobles comillas y las segundas iremos poniendo la configuración de nuestro prompt. Os voy a poner un ejemplo sencillo:

PS1="\u@\h \W $ "

Este comando, cuando lo pongamos en la Terminal, nos configurara el prompt de tal forma que se vera muy parecido al que veíamos en la primera imagen. En la siguiente captura podemos ver la diferencia entre el original (la primera linea) y el que obtenemos (segunda liena):

prompt-ubuntu

Al introducir el comando y pulsar Enter veremos que el prompt cambiara, pero sera solo de forma temporal, es decir, que cuando cerremos la Terminal y volvamos a abrirla volverá a la configuración que tenia antes. Esto nos servirá para ir viendo los cambios que vayamos haciendo, una vez que demos con el prompt deseado haremos que el cambio sea permanente, eso lo veremos al final del articulo.

Ahora os voy a explicar que es cada símbolo y cada letra de lo que va entre comillas en ese comando para que podáis interpretarlo:

- \u –> con esto se muestra el nombre del usuario con el que estamos trabajando, en mi caso el nombre del usuario es “liher”.
- @ –> esto muestra una arroba tal cual
- \h –> con esto mostramos el nombre de nuestro ordenador, es el que introdujimos durante la instalación de Ubuntu, en mi caso es “virtual”
- Ahora hay un espacio
- \W –> nos muestra el directorio en el que estamos, el símbolo que veis en la imagen que parece como un gusano, ese símbolo indica que estamos en nuestro directorio personal del usuario, a medida que nos movamos por el sistema de directorio ese símbolo ira cambiando y nos indicara el directorio en el que estemos en cada momento.
- Un espacio
- $ –> este símbolo aparece tal cual
- Otro espacio para dejar separación al escribir un comando.

Hasta aquí es bastante sencillo, como podéis ver si queremos que aparezca un texto, bien sea un numero, letra o carácter como la arroba, basta con escribirlo, si queremos que se vea alguna dato que puede ser variable como el nombre de usuario hay que ponerlo con la barra delante. Hay varios valores que se pueden mostrar con la barra, aquí os dejo algunos de ellos:

- \d –> esto nos mostrara la fecha en formato “mie jul 09?.
- \h –> nombre del host
- \j –> numero de trabajos actualmente gestionados por el interprete
- \l –> el nombre base del dispositivo de terminal del interprete
- \n –> salto de linea, donde lo pongamos hará un salto a la siguiente linea y después seguirá mostrando lo demás
- \r –> retorno de carro
- \t –> la hora actual en formato 24-horas HH:MM:SS
- \T –> la hora actual en formato 12-horas HH:MM:SS
- \@ –> la hora actual en formato 12-horas AM/PM
- \A –> la hora actual en formato 24-houras HH:MM
- \u –> el nombre del usuario actual
- \v –> la versión del paquete bash (p.ej., 2.00)
- \V –> la versión del paquete bash + el nivel de parche (p.ej., 2.00.0)
- \w –> el directorio actual de trabajo, con el directorio $HOME abreviado con una tilde
- \W –> el nombre base del directorio actual de trabajo, con el directorio $HOME abreviado con una tilde
- \! –> el número del comando actual en el histórico
- \# –> el número de comando del comando actual
- \$ –> si el UID efectivo es 0, un #; en otro caso, $
- \\ –> una diagonal invertida
- \[ --> inicio de una secuencia de caracteres no imprimibles que pueden usarse para ingresar una secuencia de control en el indicador de la terminal
- \] –> fin de una secuencia de caracteres no imprimible
- \e –> carácter de escape ASCII (033)

Con lo que hemos visto hasta ahora estamos jugando un poco con los valores que podemos mostrar, pero estaría bien poder jugar un poco con los colores también, para ello os voy a poner un ejemplo:

PS1="??\[\e[34;1m\](\A)\[\e[0;1m\]-\[\e[31;1m\]{\h@\u}\[\e[0;1m\]-\[\e[32;1m\][\w]\[\e[0;1m\]\n?? \[\e[34;1m\]\!\[\e[0;1m\] ? "

Este es el prompt que yo uso y al ejecutarlo veréis algo parecido a los siguiente:

mi-prompt

En la configuración del prompt que he puesto, que es la que yo uso, podéis ver un montón de paréntesis y números que son los responsables de los cambios de colores. Os voy a explicar todos los elementos de ese prompt y así después podréis crear uno personalizado.

Primero tengo que decir que hay un color predefinido para los colores de la Terminal y cada vez que lo cambiemos seguirá cambiado hasta que volvamos a cambiarlo. Voy a dividirlo todo en partes y así veremos su efecto. Primero vemos un angulo y un guion, estos símbolos los podemos encontrar en la siguiente pagina de simbolos de la wikipedia, solo tenéis que copiar y pegar el que queráis usar. Luego vemos lo siguiente:

\[\e[34;1m\]

Lo primero es “\[", que indica que vamos a poner algo que no queremos que salga en pantalla, en este caso vamos a escribir un código de color, queremos que se cambie el color de lo siguiente que vamos a escribir pero que no se vea el código en si. Luego va "\e" para que coja el color, después va "[34;1m\]” que indica el color deseado, en mi caso es un azul. Finalmente cerramos la secuencia con “\]”. Si no volviésemos a cambiar el color todo lo siguiente seria de color azul. Después de esto va lo siguiente:

(\A)

Esto muestra la hora entre paréntesis. Luego va lo siguiente:

\[\e[0;1m\]

Esto es igual que el cambio de color anterior pero con un color diferente, volvemos al predeterminado para poner el “-”. Después vemos esto:

\[\e[31;1m\]

Con esto ponemos el color en rojo. Luego vemos:

{\h@\u}

Nos muestra entre llaves el nombre del ordenador, después una “@” y al final el nombre de usuario con el que estamos logeados. Después tenemos:

\[\e[0;1m\]

Con esto volvemos al color por defecto para el “-” que viene después. Esto:

\[\e[32;1m\]

Nos pondrá el color verde para que lo siguiente, que es el indicador de nuestra ubicación dentro del sistema de ficheros aparezca en ese color:

[\w]

Así aparecerá nuestra ubicación entre paréntesis. Con lo siguiente volvemos al color por defecto nuevamente:

\[\e[0;1m\]

Ahora hacemos un salto de linea con “\n” y con “\[\e[34;1m\]” pongo el color en azul para mostrar el numero de comando que estoy introduciendo con “\!”. Finalmente esta la flecha que señala a la derecha y que nos señala el lugar donde la Terminal espera el comando que queramos introducir.

Aquí tenéis algunos códigos de color con los cuales podéis jugar un poco:

  • Negro 0;30
  • Gris Oscuro 1;30
  • Azul 0;34
  • Azul Claro 1;34
  • Verde 0;32
  • Verde Claro 1;32
  • Cyan 0;36
  • Cyan Claro 1;36
  • Rojo 0;31
  • Rojo Claro 1;31
  • Purpura 0;35
  • Fiuscha 1;35
  • Café 0;33
  • Amarillo 1;33
  • Gris Claro 0;37
  • Blanco 1;37

Como ya he dicho antes el prompt que os he mostrado y que yo uso es bastante sencillo, podemos complicarlo tanto como queramos y hay varios ejemplos en la red que podréis encontrar fácilmente.

Ahora, cuando hayamos terminado de hacer las pruebas pertinentes y encontremos el prompt que nos guste falta ponerlo para que cada vez que abramos la Terminal lo tengamos, esto es muy facil. Abrimos una Terminal y escribimos:

gedit .bashrc

Con esto abriremos el archivo “.bashrc”, que es un archivo oculto que tiene la configuración de la Terminal y que esta en la raíz de nuestro directorio personal. Ahora podemos hacerlo de varias formas, podemos buscar la configuración actual y cambiarla o hacerlo de la forma mas sencilla, vamos hasta el final del fichero y ponemos la linea que hemos configurado para el prompt, por ejemplo:

PS1="\u@\h \W $ "

Despues guardamos el archivo y listo, ya tenemos nuestro prompt configurado a nuestro gusto.

Espero haberme explicado bien y que con este articulo tengáis una base para diseñar vuestro propio prompt en Ubuntu.

 

Fuente: elblogdeliher

¿Quién está en línea?

Hay 7344 invitados y ningún miembro en línea