web-dev-qa-db-fra.com

Comment (et où) peut-on changer le motif 'utilisateur @ hôte $:' dans gnome-terminal?

Lorsque je démarre un terminal dans Ubuntu, je vois:

ilya@Host:~$

J'ai besoin d'ajouter un horodatage à ceci, quelque chose comme:

2011-10-09T09:32:00 ilya@Host:~$

Comment puis-je configurer cela?

20
Ilya Smagin

Il y a un bon article sur la façon de changer votre invite de bash et ce que signifient tous les symboles spéciaux (comme\h). Il y a aussi un lien sur la façon de changer les couleurs dans votre invite.

En ce qui concerne l’application des modifications dans votre fichier .bashrc, il suffit d’exécuter source ~/.bashrc

9
Tolli

Mettez ceci à la fin de votre ~/.bashrc

PS1="\D{%F}T\t $PS1"

Puis redémarrez votre terminal. Pour des explications, consultez la page de manuel de bash, recherchez ^ PROMPTING

(désolé, la première version de cette réponse indiquait par erreur des guillemets simples au lieu de doubles)

18
enzotib

Je trouve qu’une bonne configuration est d’avoir 3 groupes colorisés:

  • nom d'utilisateur et nom d'hôte
  • localisation actuelle
  • branche git actuelle

Plus une nouvelle ligne pour que vous soyez de retour sur le côté gauche!

c'est à dire.
enter image description here

Vous pouvez avoir tout cela en ayant les éléments suivants dans votre fichier .bashrc dans votre répertoire personnel.
Fonctionne sous Unix et OS X

parse_git_branch () {
  git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}
PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;33m\]$(parse_git_branch)\[\033[00m\]\n\$ '

Si vous voulez cela, en plus de vos horodatages en quatre couleurs, vous pouvez avoir:

$ PS1='\033[01;31m\] \D{%F} \t \[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;33m\]$(parse_git_branch)\[\033[00m\]\n\$ '

un péché:

enter image description here

personnellement, je pense que je vais maintenant aller avec:

parse_git_branch () {
  git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/'
}
PS1='\033[01;31m\]\t\033[00m\]:'
PS1=$PS1'\[\033[01;32m\]\u@\h\[\033[00m\]:'
PS1=$PS1'\[\033[01;34m\]\w\033[00m\]:\033[01;33m\]$(parse_git_branch)\[\033[00m\]\n\$ '
PS2='\[\033[01;36m\]>'

for

enter image description here

3
Michael Durrant

Pour appliquer le changement ~/.bashrc, tapez ceci dans le terminal en cours d'exécution:

exec bash

Pas besoin de redémarrer le terminal. Ceci est utile pour chaque changement (dans l'environnement du terminal)

3
daniele

Pour ce faire temporairement mais immédiatement/à la volée, par exemple pour que vous puissiez avoir un peu d’intimité lors de la réalisation d’un screencast, vous pouvez procéder comme suit:

echo PS1='$\ ' > /tmp/ps1 && source /tmp/ps1 && rm /tmp/ps1

La variable PS1 définit le format, source applique ce paramètre en lisant un fichier.

Maintenant, la ligne de commande ressemble à ceci:

$ 
0
qubodup