Cambiar el color del prompt en openSUSE 12.3

¿Quieres darle una toque de color al prompt de tu consola Linux? Te enseño cómo lo hice yo, por si te funciona.

consola-linux-shell

Hace un tiempo escribí un artículo sobre cómo cambiar el color del prompt en openSUSE. Puedes ver ese artículo en este enlace:

En openSUSE cuando te logueas como superusuario el prompt se pone de color rojo, para recordarte que lo que hagas será como superusuario, así que atente a las consecuencias.

Creo que es una buena idea, pero también me pareció una buena idea, y además muy útil, el marcar de otro color el prompt cuando estes logueado como un usuario normal. Y estando en openSUSE que mejor que el color verde?

Cuando listas unos archivos o escribes varias líneas en la consola, el color verde del prompt ayuda a distinguir dónde comienza una línea y empieza otra, creo que es muy útil… Así que echando mano de mi propio artículo, una vez instalada openSUSE 12.3 quise volver a poner el prompt de color verde. Pero la sorpresa fue, cuando ví que el código para realizarlo había cambiado, así que no me valía.

Para hacer que el prompt cambie de color o para editar otras configuraciones de la consola, hay que editar como superusuario el archivo que se encuentra en la siguiente dirección:

  •  /etc/bash.bashrc

Bueno, una vez abierto estuve tratando de ver cómo podía modificarlo, hasta conseguir lo que quería, después de unas cuantas pruebas. Puedes ver el resultado en esta captura. Haz click sobre la imagen para ampliar:

captura_prompt

Captura prompt

Os dejo la parte del código que modifique para que la comparéis con lo que tenéis vosotros en vuestro archivo y lo modifiquéis si os interesa, o juguéis como mejor os parezca. No pongo todo el archivo, si no la parte en la que hice las modificaciones:

# Other prompting for root
 if test "$UID" -eq 0 ; then
 if test -n "$TERM" -a -t ; then
 _bred="$(path tput bold 2> /dev/null; path tput setaf 1 2> /dev/null)"
 _sgr0="$(path tput sgr0 2> /dev/null)"
 fi
 # Colored root prompt (see bugzilla #144620)
 if test -n "$_bred" -a -n "$_sgr0" ; then
 _u="\[$_bred\]\h:"
 _p="\w > #\[$_sgr0\]"
 else
 _u="\h: "
 _p="\w > #"
 fi
 
 unset _bred _sgr0
 else
 #_u="\u@\h"
 _u="\[\e[32m\]\u@\h:\w\>\[\e[m\]"
 _p=""
 fi
 if test -z "$EMACS" -a -z "$MC_SID" -a -z "$restricted" -a \
 -n "$DISPLAY" -a ! -r $HOME/.bash.expert
 then
 _t="\[\$(ppwd)\]"
 else
 _t=""
 fi
 case "$(declare -p PS1 2> /dev/null)" in
 *-x*PS1=*)
 ;;
 *)
 # With full path on prompt
 #PS1="${_t}${_u}:\w${_p} "
 PS1="${_t}${_u}${_p} "
 #PS1="\[\e[32m\]\u@\h:\w\>\[\e[m\] "
# # With short path on prompt
# PS1="${_t}${_u}:\$(spwd)${_p} "
# # With physical path even if reached over sym link
# PS1="${_t}${_u}:\$(pwd -P)${_p} "
 ;;
 esac
 unset _u _p _t
 ;;

—————————————————-

11 pensamientos en “Cambiar el color del prompt en openSUSE 12.3

  1. Bueno, pues me ha salido. Yo ya tenía configurado mi perfil de Yakuake con todo el texto en verde, excepto el prompt de root, claro, pero ahora que solo el promt es verde y el resto blanco es más práctico. Ya no cuesta nada encontrar la línea cuando he de echar un vistazo detallado a una actualizacion de las grandes, por ejemplo.
    Gracias! 🙂

  2. Hola victorhck, algo he hecho mal y no controlo estos scripts todavía, no sé de dónde puede venir el fallo. He mirado y en principio las semicolon están bien pero cuando lo cargo en bashrc me dice Terminal que:
    bash: /etc/bash.bashrc: line 384: syntax error near unexpected token `;;’
    bash: /etc/bash.bashrc: line 384: ` ;;’
    ¿Tienes idea de qué puede ser? Quizá lo he hecho de forma chapucera. Leo que dices que se añade a lo que tenemos y no sé a qué te refieres. No hablas de bashrc, ¿no? ¿Te refieres al script que hiciste para dar color antes de la 12.3?

    • En el post sí digo que hay que editar como root el archivo /etc/bash.bashrc
      Y modificar sólo la parte que pongo
      Lo que muestro es sólo un extracto de todo el código…
      Hay que modificar sólo esa parte…

  3. saludos victorhck,
    no se que estoy haciendo mal pero realice lo que indicas para cambiar el color y no paso nada quedo igual, me explico con el administrador dolphin superusuario fui a la ruta realice dos copias del archivo, edite uno copiando la parte que indicas y remplazandola en el archivo, guarde los cambios luego fui a la ruta y remplace el origina por el modificado y no paso nada, que estoy haciendo mal?
    opensuse kde 13.1, 64bit

  4. Hola

    Una pregunta, ¿Porque no creaste el /etc/bash.bashrc.local tal y como sale en los comentarios del /etc/bash.bashrc para evitar que se modifique cuando hay actualizaciones?

    Saludos

Me gustaría saber tu opinión. Deja un comentario (Puedes usar MarkDown)

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s