更改gnome-terminal标题以反映当前目录?

okk*_*hoy 26 gnome-terminal

我想更改gnome-terminal窗口的标题以反映当前目录.有没有办法做到这一点?一个脚本可能是?"改变终端标题"线程没有多大帮助.我们使用命令时手动:

gnome-terminal --title=$PWD 
Run Code Online (Sandbox Code Playgroud)

它工作,但创建了一个新的终端实例(如预期的那样).我希望能够使用

--title=$PWD 
Run Code Online (Sandbox Code Playgroud)

使用cd命令.

有没有办法实现这一目标?

dwa*_*ter 47

由于gnome-terminal使用与xterm相同的控制命令,因此该页面可能会有所帮助.

用于bash和其他shell的Xterm标题

TL; DR:

将以下内容添加到.bashrc中

PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'

  • strip` $ {USER} @ $ {HOSTNAME}:`如果你只想要pwd (3认同)
  • 仅查看路径中的最后两个目录: `echo -ne "\033]0;${PWD/${PWD%*\/*\/*}\/}\007"` (2认同)

小智 11

PROMPT_COMMAND='echo -ne "\033]0;$(basename ${PWD})\007"' 将仅显示当前目录作为标题

  • @MariusAndreiana 丑陋且不优雅但有效:`echo -ne "\033]0;$(basename $(dirname ${PWD}))/$(basename ${PWD})\007"` (4认同)

Sto*_*tie 7

我这样做是为了覆盖cd命令并设置pwd为标题:

function title { echo -en "\033]2;$1\007"; }
function cd { dir=$1; if [ -z "$dir" ]; then dir=~; fi; builtin cd "$dir" && title `pwd`; }
cd `pwd`
Run Code Online (Sandbox Code Playgroud)

我只是把它扔进了我的~/.bash_aliases. 你可能可以调整它来做你想做的事。