將 mac OS X 上的 bash 終端機的標題設定為目前工作目錄

將 mac OS X 上的 bash 終端機的標題設定為目前工作目錄

我知道他們已經問了很多這個問題,而且我的答案很完美,但我不明白的一件事是為什麼這是不同的。

 #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"'

我在這裡遇到的問題是我想使用第二個,但是當我打開一個新的水龍頭時,它將返回到預設工作目錄,而如果我打開另一個我想要的水龍頭,第一個將保留相同的工作目錄那。

答案1

奇怪的。也許這與模式擴展何時按照 bash 的處理順序發生有關。

像是 `PROMPT_COMMAND='BASED=${PWD##*/} echo -ne "\033]0;$BASED\007"' 這樣的東西可能會成功。

編輯:那不起作用?也許這會

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

PROMPT_COMMAND=set_prompt

相關內容