xtitle 在 Ubuntu 11.04 中没有改变标题

6 gnome-terminal 11.04 titlebar

我正在尝试找到一种方法来快速更改 Gnome 终端 2.32.1 窗口的标题,因为我打开了很多窗口并且我正在编辑每个文件中的不同文件,其中一个使用编译器,在其他文件中拖尾日志文件和等等。因此,当他们都说pax@pax-desktop:~.

这个问题让我尝试,xtitle但由于某种原因,它实际上并没有改变标题。

执行xtitle xyzzy结果没有可见的反馈,但通过管道od确认它正在输出一个转义序列(我假设它是正确的,但我没有详细检查):

pax@pax-desktop:~/porn_dir$ xtitle xyzzy | od -xcb
0000000    5d1b    3b32    7978    7a7a    0779    5d1b    3b31    7978
        033   ]   2   ;   x   y   z   z   y  \a 033   ]   1   ;   x   y
        033 135 062 073 170 171 172 172 171 007 033 135 061 073 170 171
0000020    7a7a    0779
          z   z   y  \a
        172 172 171 007
0000024
Run Code Online (Sandbox Code Playgroud)

我可以进入菜单Terminal | Set Title并从那里更改它,但我更喜欢命令行解决方案,因为我可以自动完成(例如创建一个vi别名,vi filename在运行编辑器之前将标题设置为并在退出时重置它)。

在配置文件首选项中,初始标题设置为TerminalWhen terminal commands set their own titles设置为Replace initial title。也只有一个配置文件Default,这是我正在使用的配置文件。

小智 5

事实证明xtitle工作正常并且正在更改标题。但是,默认情况下有一个部分.bashrc如下:

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
    ;;
*)
    ;;
esac
Run Code Online (Sandbox Code Playgroud)

它设置提示,以便每次要求用户输入时将标题更改回通常的值。

通过注释掉PS1=...上面的行,标题仍然设置为您选择的任何内容。

这具有不更新user@host所有终端的当前状态的副作用。要在运行之前有选择地为当前 shell 启用此功能,请xtitle使用:

export PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
Run Code Online (Sandbox Code Playgroud)

(请记住,您必须在终端中获取它,而不是从脚本中调用/获取!)