Establezca el título de bash Terminal en mac OS X en el directorio de trabajo actual

Establezca el título de bash Terminal en mac OS X en el directorio de trabajo actual

Sé que han estado haciendo muchas preguntas sobre esta pregunta y funcionó perfectamente, pero una cosa que no entiendo es por qué esto es diferente.

 #This will show the full path (/usr/bin)
 PROMPT_COMMAND='echo -ne "\033]0;${PWD}\007"'


 #This will set to the directory name only (bin)
 PROMPT_COMMAND='echo -ne "\033]0;${PWD##*/}\007"'

El problema que tengo aquí es que quiero usar el segundo, pero cuando abro un nuevo grifo volverá al directorio de trabajo predeterminado, mientras que el primero mantendrá el mismo directorio de trabajo si abro otro grifo que quiero. eso.

Respuesta1

Extraño. Tal vez tenga que ver con cuándo se produce la expansión del patrón en el orden de procesamiento de bash.

Algo como `PROMPT_COMMAND='BASED=${PWD##*/} echo -ne "\033]0;$BASED\007"' podría ser la solución.

EDITAR: ¿Eso no funcionó? Tal vez esto lo haga

set_prompt () {
    BASE_PATH="${PWD##*/}"
    echo -ne "\033]0;$BASE_PATH\007"
}

PROMPT_COMMAND=set_prompt

información relacionada