當前位置: 首頁>>技術問答>>正文


如何更改Gnome-Terminal標題?

, , ,

問題描述

我有幾個終端在我的工作環境中運行,我希望為每個終端設置一個特定的標題,以便清楚地了解特定終端的用途,例如Apache,editing_ini,postgres等。

當然從命令行。

最佳解決思路

  • 用戶最友好的方式是從菜單中選擇終端 – > “設置標題…”。

  • 還有其他方法,但你也可以發布

    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。

command-line,gnome-terminal,titlebar,ubuntu

第五種思路

啊,很多答案…

我嘗試了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’,’Editing’等標題相關的不同配置文件。然後,您將啟動具有適當配置文件的gnome-terminal以獲取您指定的終端標題。這與gnome-terminal --title "name"形成鮮明對比,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設置生效。可用於gnome-terminal的完整設置可以用gconftool-2 -R /apps/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
    

    考慮在打開新標簽之前和之後添加休眠時間,例如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"' 

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/376.html,未經允許,請勿轉載。