Comment afficher le nom d'hôte dans l'invite de ligne de commande Linux

18

J'ai plusieurs machines virtuelles et à l'heure actuelle, mon invite de ligne de commande ressemble -bash-3.2$; identique sur chaque VM, car il ne contient pas le nom d'hôte. Je dois toujours voir quelle machine virtuelle j'utilise hostnameavant de faire une opération. Comment puis-je ajouter le nom d'hôte à l'invite du shell?

ENV: CentOS / ssh

uday
la source
BTW, vous n'avez pas besoin «d'améliorer» une modification suggérée que vous n'approuvez pas, puis d'annuler toutes les modifications. Il suffit de «rejeter» la modification et elle disparaîtra.
G-Man dit `` Réintègre Monica '' le
1
J'utilise toujours une invite où je peux facilement le copier pour une commande scp, c'est ainsi export PS1='\u@\h:\w \$ '.
ott--

Réponses:

9

Modifiez simplement la valeur de la $PS1variable d'environnement:

PS1="\h$ "

\hest remplacé par le nom d'hôte. Ajoutez-le à /etc/bash.bashrcpour le rendre permanent.

le chaos
la source
16

Examinez votre ~/.bashrcou ~/.profile, il peut y avoir une configuration d'invite commentée qui devrait faire ce que vous voulez, comme celle-ci sur notre infra:

export PS1='\h:\w\$ '

Qui ressemble à:

coolservername:~# 

Ou si vous prévoyez de vous connecter en tant que non root, vous pouvez utiliser:

 export PS1='\u@\h:\w\$ '

pour ajouter un nom d'utilisateur avant le nom d'hôte.

Vous pouvez vous amuser à ajouter des couleurs, des multilignes ou toutes les informations que vous souhaitez dans l'invite, une recherche rapide sur les "invites bash" devrait vous donner beaucoup d'indices.

Lukhas
la source
5

J'aime quand l'invite du shell affiche le nom d'utilisateur, le nom d'hôte et le nom du répertoire de travail. De plus, j'aime bien, quand tout cela est montré en couleurs. Donc je mets habituellement

export PS1='\[\033[0;32m\]\u@\h:\[\033[36m\]\W\[\033[0m\] \$ '

dans ~/.bashrc. Pour appliquer immédiatement les modifications, appelez

. ~/.bashrc

De plus, si vous basculez vers root en utilisant, suil est bon de voir l'invite bash dans une couleur différente, afin de faire preuve de plus de prudence. Pour cela j'ajoute la ligne

export PS1='\[\033[0;31m\]\u@\h:\[\033[36m\]\W\[\033[0m\] \$ '

dans /root/.bashrc. Et appeler

. /root/.bashrc

pour appliquer les modifications. Alors ça ressemble à ça

entrez la description de l'image ici

Très souvent, les administrateurs de serveur VPS fournissent des noms d'hôte stupides. Pour le changer, ouvrez /etc/sysconfig/networket changez la ligne

HOSTNAME=put_what_you_want_to_see_in_bash_prompt_here

Si vous voulez des couleurs différentes pour la username@hostpièce, vous devez changer la pièce 0; 32m dans le premier exemple, ou la pièce 0; 31m dans le deuxième exemple. La liste des couleurs disponibles se trouve ici

Puisque .bashrcest exécuté pour les shells sans connexion, n'oubliez pas de vérifier que

if [ -f ~/.bashrc ]; then
         . ~/.bashrc
fi

est présent dans ~/.bash_profile, puisqu'il ~/.bash_profileest exécuté à votre connexion. Et ajoutez également la même pièce dans /root/.bash_profile.

John Smith
la source
0

En plus de changer l'invite, il y a une option dans la configuration de konsoleet l'émulateur de terminal gnome, qui changera la barre de titre (ou le titre de l'onglet).

ctrl-alt-delor
la source