
我知道他們已經問了很多這個問題,而且我的答案很完美,但我不明白的一件事是為什麼這是不同的。
#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