Me gustaría eliminar la tilde de la visualización dentro de la variable PS1.
Mi cadena actual de PS1:
PS1="\h:\w\n$"
Y el aviso se ve así:
lnx-hladky:/tmp/plugtmp
$
No me gusta que el directorio $ HOME se muestre como tilde. ¿Se puede evitar esto?
Causa problemas, por ejemplo:
lnx-hladky:~/DOC
$
La documentación dice:
\w : the current working directory, with $HOME abbreviated with a tilde
\W: the basename of the current working directory, with $HOME abbreviated with a tilde
¿Hay alguna posibilidad de evitar que $ HOME se abrevie con una tilde?
He encontrado una forma de evitarlo, pero siento que es demasiado complicado:
PROMPT_COMMAND='echo -ne "\e[4;35m$(date +%T)\e[24m$(whoami)@$(hostname):$(pwd)\e[m\n"'
PS1=$
¿Alguien puede proponer una mejor solución? Tengo la sensación de que no está del todo bien ejecutar tantos comandos solo para obtener un aviso. (fecha, whoami, nombre de host, pwd).
command-line
bash
unix
Jirka
fuente
fuente
Respuestas:
bash ejecuta expansiones en el prompt; solo asegúrate de escapar de ellos.
fuente
pwd
en cada solicitud. La solución de Dennis no lo hace, solo obtiene la variable de entorno PWD, que es mucho más barata.pwd
es un bash incorporado. La afirmación de que${PWD}
es "mucho más barata" que$(pwd)
sin evidencia.No necesita ejecutar tantos comandos como mostró en su ejemplo.
bash
proporciona atajos para la mayoría de las cosas que mencionaste.Su ejemplo:
puede reescribirse como:
Donde
\t
muestra la hora (en formato de 24 horas),\u
muestra el nombre de usuario actual, '\ h' muestra el nombre de host; labash
página de manual analiza estos y el resto de los escapes disponibles para su solicitud.Incluso si expande la
~
ruta a la ruta completa, si no sabe qué usuario está ejecutando el comando y cambia de usuario regularmente, puede crear problemas con los permisos de archivos o permisos ejecutables.fuente
\u
para saber quién soy. No olvide aceptar la respuesta de Ignacio: haga clic en la casilla de verificación a la izquierda de la pregunta.Estoy usando la configuración a continuación en mi archivo .bash_profile
fuente