Parámetros en la variable bash $PS1

Parámetros en la variable bash $PS1

Entre los distintos parámetros que se pueden incluir en la bash PS1variable, \wse expande

el directorio de trabajo actual, con $HOME abreviado con una tilde (usa el valor de la variable PROMPT_DIRTRIM)

como se indica en elmanual de bash.

My $HOMEestá configurado en /home/myuser/(el mismo valor especificado en /etc/passwd), pero la expansión de \win PS1aparece /home/myusercuando estoy en el $HOMEdirectorio. Por tanto, no se «abrevia con tilde».

Estoy usando Ubuntu 16.04 con GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu).

¿Qué ocurre? ¿Cuál es la fuente desde donde \wrealmente se copia la ruta del directorio actual?

Respuesta1

El final /es /home/myuser/confuso. Creo que verás un comportamiento normal si lo eliminas.

Esa barra diagonal no forma parte del nombre del directorio; es un separador de caminos. No debería estar en /etc/passwd, y no debería estar en $HOME.

Puedes probar esa teoría sin tocar un archivo usando solo:

HOME=/home/myuser

después de lo cual debería aparecer la tilde en el mensaje.

información relacionada