如何更改Gnome-Terminal标题?

我有几个终端在我的工作环境中运行,我想要为每个终端设置一个特定的标题,以便清楚地了解特定终端服务的目的,即Apache,editing_ini,postgres等……

当然是从命令行。

  • 最用户友好的方式是从菜单Terminal – >“Set Title …”中选择它。

  • 不过还有其他方法,您也可以发布

     gnome-terminal --title="SOME TITLE HERE" 

    这可能无法产生预期的效果,因为.bashrc很可能会覆盖该行为。

  • 把我们带到最后一个方法,我无耻地从我的.bashrc删除了。

     PROMPT_COMMAND='echo -ne "\033]0;SOME TITLE HERE\007"' 

作为额外的参考,这是我的.bashrc的特定行

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

您可能还需要在〜/ .bashrc中注释掉这段代码

 case "$TERM" in xterm*|rxvt*) # JEFFYEE REMOVED because it makes commands to title() not work #PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" ;; *) ;; esac 

如果您想在每次打开终端时根据您所在的主机设置标题,Ward的答案很棒。 如果你只是想快速设置一个标题,你可以自己运行echo:

 echo -ne "\033]0;SOME TITLE HERE\007" 

或者制作一个简单的bash脚本,比如termtitle

 #!/bin/bash echo -ne "\033]0;${1}\007" 

哪个你可以用termtitle "some title here"

如果使用Vim编辑器,还可以在vimrc中启用此选项:

 :set title 

默认情况下禁用。 它将设置很酷的终端标题,显示您正在编辑的文件名以及其他一些内容。

为了完整起见,我想补充一点,你也可以使用这个命令设置gnome-terminal标题:

 wmctrl -r :ACTIVE: -N "MyWindowTitle" 

你需要安装包wmctrl 安装wmctrl 第一。

唉,这么多答案……

我尝试了wmctrl,它几乎可以工作,除了我无法让它改变图标标题,至少不是永久性的。

解决方案是ubuntu中的PS1设置标题。

默认PS1是

 \[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$ 

…在第一个转义序列中设置标题。

因此,有两种解决方案:

解决方案1:简化PS1,然后使用PROMPT_COMMAND

将PS1更改为更简单的内容:

 PS1="\u@\h:\w\$ " 

…然后使用PROMPT_COMMAND:

 PROMPT_COMMAND='echo -ne "\033]0;SOME TITLE HERE\007"' 

解决方案2:直接修改PS1

只需使用新标题修改PS1:

 PS1='\[\e]0;newtitle\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' 

如果您是Ubuntu用户,可以使用HUD更改gnome-terminal选项卡的标题。

在gnome-terminal中,按Alt键调出HUD,输入前几个字母,例如“tit”,按回车键入你的新标题。

这是一种非常快速的方法,可以避免使用鼠标。

改变gnome-terminal标题的另一种方法是使用gconftool-2 ; 这会更改所选配置文件的初始终端标题,因此您可以使用与“Apache”,“编辑”等标题关联的不同配置文件。然后,您将使用相应的配置文件启动gnome-terminal以获取您拥有的终端标题指定。 这与gnome-terminal --title "name"形成对比,后者改变了每个终端的标题,但不影响配置文件中指定的初始标题。

您可以在脚本中使用以下命令来设置配置文件的终端名称,并且您可以在当天的特定时间更改终端的名称以提醒您:

 gconftool-2 --set /apps/gnome-terminal/profiles/Default/title --type=string "Apache" 

这是默认配置文件,但您也可以通过将Default更改为其他配置文件(如Profile0来设置其他配置文件的标题:

 gconftool-2 --set /apps/gnome-terminal/profiles/Profile0/title --type=string "Editing" 

我认为这种改变标题的方式是有用的,因为它可以在脚本中使用,或者只是作为设置配置文件标题的快速命令行方式。 请注意,有时您必须重新启动具有指定配置文件的终端才能使gconftool-2设置gconftool-2 。 可以使用gconftool-2 -R /apps/gnome-terminal列出gnome-terminal的完整设置。

另一个解决方案是使用xdotool来模拟击键,在脚本中可能很有用:

  1. 在gnome-terminal中设置键盘快捷键:

     Edit > Keyboard Shortcuts... > Terminal > Set Title 

    例如,分配Shift+Ctrl+Y

  2. 如果你还没有安装xdotool

     sudo apt-get install xdotool 
  3. 以下命令序列(您也可以在bash脚本中使用)将设置终端/选项卡标题(使用\转义空格):

     xdotool key ctrl+shift+y xdotool type My\ new\ fabulous\ title xdotool key Return 
  4. [可选]您也可以使用xdotool打开新选项卡并使用上述命令设置标题,使用:

     xdotool key ctrl+shift+t 

    考虑在打开新标签之前和之后添加hibernate时间,例如sleep 1 (等待1秒)。

这不是最优雅的解决方案,但它对我有用! 以前的答案在我的案例中不起作用。 我在Ubuntu 14.04中使用gnome-terminal,我想制作一个bash脚本。

要仅显示标题中的当前工作目录,请在“.bashrc”中尝试:

 PROMPT_COMMAND='echo -ne "\033]0; ${PWD##*/}\007"' 

要么

 PROMPT_COMMAND='echo -ne "\033]0;$(basename ${PWD})\007"' 

如果像我这样的任何可怜的灵魂被迫使用tcsh,请在.cshrc中尝试这样的事情:

 set prompt='%{\033]0;%n@%m\007%}%~%# ' 

来源和更多细节: http : //tldp.org/HOWTO/Xterm-Title-4.html

这在我的Gnome Terminal 3.18.3中有效

编辑.bashrc文件并添加此function

 # Update gnome terminal title function termtitle() { # take argument TITLE=$1 shift # update title PROMPT_COMMAND='echo -ne "\033]0; $TITLE \007"' } 

不要忘记提供.bashrc文件

 $ source ~/.bashrc 

然后你可以简单地更新你将能够像这样更改终端标题:

 $ termtitle "MariaDB CLI"