设置终端选项卡标题

我正试图在gnome-terminal中打开几个终端选项卡,到目前为止我已经设法做了一些事情 ,但我现在卡住了。

所以,我有以下要求:

  • 打开标题为“X”和“Y”的标签
  • 执行一些命令
  • 保持标签打开并准备好进一步使用; 保持标题。

到目前为止,我设法满足了一些要求,但并非所有要求:

gnome-terminal --tab -t "X" -e "bash" --tab -t "Y" -e "top" 

这会打开两个标签:

  1. “X”(然后将标题更改为默认标题)
  2. “Y”,但是一旦我退出top ,标签就会关闭。

有没有办法打开一个标签,启动bash ,但不能更改标题? 我试过Google,但放弃了。

编辑:它不一定是一个命令。

正如您在其他答案中所看到的,每次输出提示时,shell都会更改选项卡的标题。 执行top您的选项卡退出,因为您告诉它运行的命令完成…

我会做以下事情:

第1步:使用shell调用终端,添加如下环境变量:

 gnome-terminal --tab -t X -e "env MYTAB=X bash" --tab -t Y -e "env MYTAB=Y bash" 

第2步:在.bashrc的末尾添加以下代码:

 #if MYTAB is not set, return [ -z "$MYTAB" ] && return # reset the cursor and title PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' PS1="\[\e]0;$MYTAB \w\a\]$PS1" #title: $MYTAB and current dir # execute the commands for every tab case "$MYTAB" in X) echo this is X ;; Y) echo this is Y top ;; esac 

…我认为这很容易理解,您可以使用您需要的命令/调整进行修改。 测试并且工作正常; 从标签退出top后,您仍然会有提示和标签供您阅读。

屏幕截图(在top按“q”后):

截图

要保留标签标题,您需要在.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 

然后gnome-terminal --tab -t "X" -e "bash" --tab -t "Y" -e "top"将按预期工作:

在此处输入图像描述

我假设它不必是一个命令,并提供一个完全图形化的方式来做到这一点。

启动gnome-terminal后,“文件”菜单允许您打开将分配给定标题的新选项卡。 可以通过“终端”菜单或右键单击选项卡并从上下文菜单中进行更改。

然后你可以打开顶部和你想要的任何其他命令,它都在终端中,作为一个正常的,未绑定的进程运行,从任何其他终端运行 – 只是桌面环境 – 在它感觉完成之后不会死掉它应该做的。

在玩的时候,我发现根本不是命令 – 这是个人资料。

去:

 Edit | Profiles | (Default) | Edit | Title and Command 

并将“当终端设置自己的标题时”选项更改为“保留初始标题”,位于列表的底部。 现在,当您启动带有标题的命令时,它会一直存在,因此您的命令将正常工作。

在此处输入图像描述