Ctrl-a Shift-a を使用してウィンドウ名を変更できます。複数のウィンドウ名を手動で編集するのではなく、現在のディレクトリ名に沿って自動的に名前を付ける方法はありますか?
答え1
ディレクトリを変更するたびに、またはプロンプトを表示するたびにシェルにウィンドウのタイトルを変更するようにします。
あなたのため~/.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
またはあなた~/.zshrc
(zshユーザーの場合):
precmd () {
local tmp='%~'
local HPWD=${(%)tmp}
if [[ $TERM == screen* ]]; then
printf '\ek%s\e\\' $HPWD
fi
}
詳細については、以下を確認してください。動的タイトル画面のマニュアルまたはマンページの「タイトル(名前付きウィンドウ)」の下にあります。
答え2
これを.bashrcに入れて、端末名(ウィンドウ名)を作業している最後のディレクトリ(またはファイル名)に変更できます。
case "$TERM" in xterm*|rxvt*) PROMPT_COMMAND='echo -ne "\033]0;${PWD##*/}\007"' ;; *) ;; esac
詳細な説明はここにあります: 協会