Esta es una pregunta un tanto cosmética (y trivial), pero supongo que puede ser útil para otras personas además de para mí. He estado jugando con la variable $PS1 en mi ~/.bashrc y me preguntaba si había alguna manera de que el primer mensaje fuera ligeramente diferente a todos los demás. Más específicamente, hasta ahora tengo:
PS1='\n\[\e[0;37m\][\[\e[0;35m\]\t\[\e[0;37m\]] \[\e[0;36m\]\u@\h \[\e[0;37m\][\[\e[1;34m\]\W\[\e[0;37m\]] \[\e[0;36m\]\$ \[\e[0m\]'
pero no quiero que la nueva línea al principio se muestre en el primer mensaje (y podría ampliar esto para que el primer mensaje incluya más información, etc.). Estoy usando gnome-terminal, si eso hace la diferencia.
¿Es esto posible? Y si es así, ¿cómo?
Respuesta1
Una forma de hacer esto sería utilizar PROMPT_COMMAND de bash. Por ejemplo, podrías poner lo siguiente en tu ~/.bashrc (o ejecutarlo en la línea de comando mientras experimentas).
set_ps()
{
if [ -z "$PSFLAG" ]
then
# Set first prompt
PS1='first prompt: '
PSFLAG=1
else
# Set other prompt
PS1='other prompt: '
fi
}
PROMPT_COMMAND=set_ps
Respuesta2
Si desea que algunos caracteres se muestren antes del primer mensaje y nunca más, ¿por qué no .bashrc
los genera?