lie*_*ewl 21 gnu-screen terminal window-title
我可以使用 Ctrl-a Shift-a 更改窗口的名称。有没有办法让它们自动以当前目录命名,而不是手动编辑多个窗口名称?
Gil*_*il' 23
每次更改目录或每次显示提示时,让您的 shell 更改窗口标题。
对于您的~/.bashrc
:
if [[ "$TERM" == screen* ]]; then
screen_set_window_title () {
local HPWD="$PWD"
case $HPWD in
$HOME) HPWD="~";;
$HOME/*) HPWD="~${HPWD#$HOME}";;
esac
printf '\ek%s\e\\' "$HPWD"
}
PROMPT_COMMAND="screen_set_window_title; $PROMPT_COMMAND"
fi
Run Code Online (Sandbox Code Playgroud)
或者对于您的~/.zshrc
(对于 zsh 用户):
precmd () {
local tmp='%~'
local HPWD=${(%)tmp}
if [[ $TERM == screen* ]]; then
printf '\ek%s\e\\' $HPWD
fi
}
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请在屏幕手册中的动态标题下或手册页中的“标题(命名窗口)”下查找。