Defina o título do terminal bash no mac OS X para o diretório de trabalho atual

Defina o título do terminal bash no mac OS X para o diretório de trabalho atual

Eu sei que eles têm feito muitas perguntas sobre isso e consegui que funcionasse perfeitamente, mas uma coisa que não entendo é por que isso é 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"'

O problema que tenho aqui é que quero usar o segundo, mas quando eu abrir uma nova torneira ela voltará para o diretório de trabalho padrão, enquanto a primeira manterá o mesmo diretório de trabalho se eu abrir outra torneira que desejo que.

Responder1

Estranho. Talvez tenha a ver com quando a expansão do padrão ocorre na ordem de processamento do bash.

Algo como `PROMPT_COMMAND='BASED=${PWD##*/} echo -ne "\033]0;$BASED\007"' pode resolver o problema.

EDITAR: Isso não funcionou? Talvez isso vá

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

PROMPT_COMMAND=set_prompt

informação relacionada