Как изменить название Gnome-Terminal?

У меня есть несколько экземпляров терминалов, работающих в моей рабочей среде, я хотел бы установить конкретный заголовок для каждого из них, чтобы иметь четкое представление о том, какой целью служит конкретный терминал, например Apache, edit_ini, postgres и т. д. ..

Конечно из командной строки.

139 голосов | спросил topless 20 Jpm1000000pmThu, 20 Jan 2011 16:20:39 +030011 2011, 16:20:39

11 ответов


129
  • Самый удобный способ - выбрать его из меню Terminal -> «Установить заголовок ...».

  • Есть и другие способы, вы также можете выдать

    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)}\[email protected]\h: \w\a\]$PS1"
    ;;
*)
    ;;
esac
ответил Ward Muylaert 20 Jpm1000000pmThu, 20 Jan 2011 16:51:02 +030011 2011, 16:51:02
50

Ответ Уорда велик, если вы хотите установить свой заголовок на основе того, на каком хосте вы находитесь и т. д. каждый раз, когда вы открываете терминал. Если вы просто хотите быстро установить заголовок, вы можете просто запустить echo самостоятельно:

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

или создайте простой скрипт bash, скажем termtitle

#!/bin/bash

echo -ne "\033]0;${1}\007"

, который вы можете запустить с помощью termtitle "some title here"

ответил naught101 29 Mayam12 2012, 06:20:16
30

Если вы используете редактор Vim, вы также можете включить этот параметр в своем vimrc:

:set title

, который по умолчанию отключен. Он установит классные заголовки терминалов, в которых будет отображаться имя файла, которое вы редактируете в данный момент, и некоторые другие вещи.

ответил ulidtko 20 Jpm1000000pmThu, 20 Jan 2011 17:40:11 +030011 2011, 17:40:11
21

Для полноты я добавлю, что вы также можете установить заголовок gnome-terminal, используя следующую команду:

wmctrl -r :ACTIVE: -N "MyWindowTitle"

Вам нужно будет установить пакет wmctrl  Установить wmctrl сначала.

ответил Isaiah 23 Jam1000000amSun, 23 Jan 2011 03:57:05 +030011 2011, 03:57:05
15

Арг, так много ответов ...

Я пробовал wmctrl, который работал почти , но я не мог заставить его изменить название значка, по крайней мере, навсегда.

Решение состоит в том, что PS1 в ubuntu устанавливает заголовок.

По умолчанию PS1 -

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

... который устанавливает заголовок в первой escape-последовательности.

Таким образом, существует два решения:

Решение 1: упростите PS1, затем используйте PROMPT_COMMAND

Измените PS1 на что-то более простое:

PS1="\[email protected]\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)}\[email protected]\h:\w\$ '
ответил Hugh Perkins 7 FebruaryEurope/MoscowbThu, 07 Feb 2013 07:36:07 +0400000000amThu, 07 Feb 2013 07:36:07 +040013 2013, 07:36:07
11

Если вы пользователь Ubuntu, вы можете изменить заголовок вкладки gnome-terminal, используя HUD .

Пока в гном-терминале нажмите Alt, чтобы открыть HUD, введите первые несколько букв, например. «tit», нажмите enter и введите новый заголовок.

Это очень быстрый метод и позволяет избежать использования мыши.

ответил Tom 18 J0000006Europe/Moscow 2013, 10:55:10
4

Другим способом изменения названия 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, чтобы он повлиял. Полные настройки, доступные для gnome-terminal, можно указать с помощью gconftool-2 -R /apps/gnome-terminal.

ответил 3 Jam1000000amThu, 03 Jan 2013 05:09:14 +040013 2013, 05:09:14
3

Другим решением является использование xdotool для имитации нажатий клавиш, возможно, полезно в скриптах:

  1. Задайте комбинацию клавиш в терминале gnome:

    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. [optional] Вы также можете использовать xdotool, например. откройте новую вкладку и установите заголовок с помощью приведенных выше команд, используя:

    xdotool key ctrl+shift+t
    

    Рассмотрим добавление времени сна до и после открытия новой вкладки, например. sleep 1 (ждать 1 секунду).

Это не самое элегантное решение, но это сработало для меня! Предыдущие ответы не были выполнены в моем случае. Я использую gnome-terminal в Ubuntu 14.04, и я хотел создать сценарий bash.

ответил MakisH 12 42015vEurope/Moscow11bEurope/MoscowThu, 12 Nov 2015 20:55:44 +0300 2015, 20:55:44
2

Чтобы отобразить только текущий рабочий каталог в названии, попробуйте это в своем .bashrc:

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

или

PROMPT_COMMAND='echo -ne "\033]0;$(basename ${PWD})\007"' 
ответил Sriram 16 MaramSun, 16 Mar 2014 09:47:01 +04002014-03-16T09:47:01+04:0009 2014, 09:47:01
0

Если любые бедные души, подобные мне, вынуждены использовать tcsh, попробуйте что-то подобное в вашем .cshrc:

set prompt='%{\033]0;%[email protected]%m\007%}%~%# '

Источник и более подробная информация: http://tldp.org/HOWTO/Xterm- Титульный 4.html

ответил spookypeanut 2 Maypm17 2017, 14:11:02
0

Это работало на моем терминале Gnome 3.18.3 .

Измените файл .bashrc и добавьте эту функцию

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

Не забывайте source ваш .bashrc файл

source

И тогда вы можете просто обновить, вы сможете изменить название терминала следующим образом:

$ source ~/.bashrc
ответил RousseauAlexandre 23 +03002017-10-23T12:06:36+03:00312017bEurope/MoscowMon, 23 Oct 2017 12:06:36 +0300 2017, 12:06:36

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132