Comment changer le titre de Gnome-Terminal?

145

J'ai plusieurs exemples de terminaux fonctionnant dans mon environnement de travail. Ce que je voudrais, c'est définir un titre spécifique pour chacun d'eux, afin d'avoir une idée précise de l'objectif du terminal spécifique, à savoir Apache, montage_ini, postgres, etc. ..

Bien sûr depuis la ligne de commande.

    
posée topless 20.01.2011 - 14:20
la source

12 réponses

132
  • Le moyen le plus convivial consiste à le sélectionner dans le menu Terminal - > "Définir le titre ...".

  • Il existe d'autres moyens mais vous pouvez également émettre

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

    Cela pourrait ne pas donner l'effet souhaité car il y a de grandes chances que votre .bashrc écrase ce comportement.

  • Nous amène à la dernière méthode, que j'ai effrontée sans vergogne de mon .bashrc .

    PROMPT_COMMAND='echo -ne "3]0;SOME TITLE HERE
    PROMPT_COMMAND='echo -ne "3]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}
    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
    
    7"'
    7"'

Comme référence supplémentaire, il s'agit de la ligne particulière dans mon .bashrc

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

Vous devrez peut-être aussi commenter ce code dans votre ~ / .bashrc

PROMPT_COMMAND='echo -ne "3]0;SOME TITLE HERE
PROMPT_COMMAND='echo -ne "3]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}
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
7"'
7"'
    
réponse donnée Ward Muylaert 20.01.2011 - 14:51
la source
54

La réponse de Ward est excellente si vous souhaitez définir votre titre en fonction de l'hôte sur lequel vous êtes, etc. à chaque fois que vous ouvrez un terminal. Si vous souhaitez simplement définir rapidement un titre, vous pouvez simplement lancer echo par lui-même:

echo -ne "3]0;SOME TITLE HERE
#!/bin/bash

echo -ne "3]0;${1}
echo -ne "3]0;SOME TITLE HERE
#!/bin/bash

echo -ne "3]0;${1}%pre%7"
7"
7"
7"

ou créez un script bash simple, dites termtitle

%pre%

que vous pouvez exécuter avec termtitle "some title here"

    
réponse donnée naught101 29.05.2012 - 04:20
la source
30

Si vous utilisez l'éditeur Vim, vous pouvez également activer cette option dans votre vimrc:

:set title

qui est désactivé par défaut. Il va définir des titres de terminal sympas indiquant le nom du fichier que vous êtes en train d’éditer et quelques autres choses.

    
réponse donnée ulidtko 20.01.2011 - 15:40
la source
23

Par souci d’exhaustivité, j’ajouterais que vous pouvez également définir le gnome-terminal title à l’aide de cette commande:

wmctrl -r :ACTIVE: -N "MyWindowTitle"

Vous aurez besoin d'installer le paquet wmctrl d'abord.

    
réponse donnée Isaiah 23.01.2011 - 01:57
la source
16

Argh, tant de réponses ...

J'ai essayé wmctrl, qui a presque fonctionné, sauf que je ne pouvais pas le faire pour changer le titre de l'icône, du moins pas de façon permanente.

La solution est que PS1 dans Ubuntu définit le titre.

La PS1 par défaut est

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

... qui définit le titre dans la première séquence d'échappement.

Il existe donc deux solutions:

Solution 1: simplifiez PS1, puis utilisez PROMPT_COMMAND

Modifiez PS1 en quelque chose de plus simple:

PS1="\[email protected]\h:\w\$ "

... puis utilisez le PROMPT_COMMAND:

PROMPT_COMMAND='echo -ne "3]0;SOME TITLE HERE
PS1='\[\e]0;newtitle\a\]${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$ '
7"'

Solution 2: modifier directement PS1

Modifiez simplement PS1 avec le nouveau titre:

\[\e]0;\[email protected]\h: \w\a\]${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$ 
    
réponse donnée Hugh Perkins 07.02.2013 - 04:36
la source
11

Si vous êtes un utilisateur Ubuntu, vous pouvez modifier le titre d'un onglet gnome-terminal à l'aide du HUD .

Dans le terminal gnome, appuyez sur Alt pour afficher le HUD, saisissez les premières lettres, par exemple. "tit", appuyez sur Entrée et tapez votre nouveau titre.

C'est une méthode très rapide qui évite d'utiliser la souris.

    
réponse donnée Tom 18.06.2013 - 08:55
la source
4

Une autre façon de changer le titre de gnome-terminal consiste à utiliser gconftool-2 ; cela change le titre initial du terminal pour le profil sélectionné. Vous pouvez ainsi associer différents profils à des titres tels que "Apache", "Édition", etc. Vous lancerez ensuite gnome-terminal avec le profil approprié pour obtenir le titre du terminal que vous avez spécifié. Ceci est en contraste avec gnome-terminal --title "name" qui modifie le titre par terminal, mais n'affecte pas le titre initial spécifié dans le profil.

Vous pouvez utiliser la commande suivante dans un script pour définir le nom du terminal pour un profil. Vous pouvez également modifier le nom du terminal à certaines heures de la journée pour vous rappeler des choses:

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

Ceci concerne le profil par défaut, mais vous pouvez également définir le titre d'autres profils en remplaçant, par exemple, Default par un autre profil tel que Profile0 :

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

Je pensais que cette façon de changer le titre était utile en raison de la manière dont elle pourrait être utilisée dans les scripts ou simplement comme un moyen rapide en ligne de commande de définir le titre du profil. Notez que vous devez parfois relancer le terminal avec le profil spécifié pour que le paramètre gconftool-2 soit pris en compte. Les paramètres complets disponibles pour gnome-terminal peuvent être listés avec gconftool-2 -R /apps/gnome-terminal .

    
réponse donnée user76204 03.01.2013 - 02:09
la source
3

Une autre solution consiste à utiliser xdotool pour simuler des frappes au clavier, ce qui peut être utile dans les scripts:

  1. Définissez un raccourci clavier dans gnome-terminal:

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

    Par exemple, asserons le Shift+Ctrl+Y .

  2. Installez xdotool si vous ne l'avez pas déjà:

    sudo apt-get install xdotool
    
  3. La séquence de commandes suivante (que vous pouvez également utiliser dans un script bash) définira le titre du terminal / onglet (échappera aux espaces avec \ ):

    xdotool key ctrl+shift+y 
    xdotool type My\ new\ fabulous\ title
    xdotool key Return
    
  4. [facultatif] Vous pouvez également utiliser xdotool pour, par exemple, ouvrez un nouvel onglet et définissez le titre avec les commandes ci-dessus, en utilisant:

    xdotool key ctrl+shift+t
    

    Envisagez d’ajouter un temps de sommeil avant et après l’ouverture d’un nouvel onglet, par exemple. sleep 1 (à attendre 1 seconde).

Ce n’est pas la solution la plus élégante, mais cela a fonctionné pour moi! Les réponses précédentes n'ont pas fonctionné dans mon cas. J'utilise gnome-terminal dans Ubuntu 14.04 et je voulais créer un script bash.

    
réponse donnée MakisH 12.11.2015 - 18:55
la source
2

Pour afficher uniquement le répertoire de travail actuel dans le titre, essayez ceci dans votre '.bashrc':

PROMPT_COMMAND='echo -ne "3]0; ${PWD##*/}
PROMPT_COMMAND='echo -ne "3]0;$(basename ${PWD})
PROMPT_COMMAND='echo -ne "3]0; ${PWD##*/}
PROMPT_COMMAND='echo -ne "3]0;$(basename ${PWD})%pre%7"' 
7"'
7"'
7"'

ou

%pre%     
réponse donnée Sriram 16.03.2014 - 06:47
la source
1

Cela a fonctionné dans mon terminal Gnome 3.18.3 .

Modifiez votre fichier .bashrc et ajoutez cette fonction

# Update gnome terminal title
function termtitle() {
    # take argument
    TITLE=$1
    shift
    # update title
    PROMPT_COMMAND='echo -ne "3]0; $TITLE 
$ source ~/.bashrc
7"' }

N'oubliez pas de source votre fichier .bashrc

$ termtitle "MariaDB CLI"

Ensuite, vous pouvez simplement mettre à jour, vous pourrez modifier le titre du terminal de la manière suivante:

# Update gnome terminal title
function termtitle() {
    # take argument
    TITLE=$1
    shift
    # update title
    PROMPT_COMMAND='echo -ne "3]0; $TITLE 
$ source ~/.bashrc
7"' }
    
réponse donnée RousseauAlexandre 23.10.2017 - 11:06
la source
0

Si vous utilisez gnome 3, l'option de menu pratique Terminal > Set Title a été supprimée. Vous pouvez installer un terminal forké de gnome 2 qui a toujours cette option de menu "Définir le titre" et l'exécuter à la place:

sudo apt-get install mate-terminal

Au lieu d’exécuter "Terminal", exécutez "MATE Terminal". Vous devriez probablement aussi sélectionner mate-terminal dans sudo update-alternatives --config x-terminal-emulator .

    
réponse donnée 27.11.2018 - 07:28
la source
0

Au cas où des âmes pauvres comme moi seraient obligées d’utiliser Tcsh, essayez quelque chose comme ça dans votre .cshrc:

set prompt='%{3]0;%[email protected]%m
set prompt='%{3]0;%[email protected]%m%pre%7%}%~%# '
7%}%~%# '

Source et plus de détails: lien

    
réponse donnée spookypeanut 02.05.2017 - 13:11
la source

Lire d'autres questions sur les étiquettes