Como mostrar o nome do host no prompt de linha de comando do Linux

10

Eu tenho várias VMs e agora meu prompt de linha de comando se parece com -bash-3.2$ ; idêntico em todas as VMs, porque não contém o nome do host. Eu preciso sempre ver qual VM estou usando hostname antes de fazer qualquer operação. Como posso adicionar o nome do host ao prompt do shell?

ENV: CentOS / ssh

    
por uday 24.07.2015 / 16:36

4 respostas

5

Basta alterar o valor da variável de ambiente $PS1 :

PS1="\h$ "

onde \h é substituído pelo nome do host. Adicione isso a /etc/bash.bashrc para defini-lo como permanente.

    
por 24.07.2015 / 16:43
12

Procure em ~/.bashrc ou ~/.profile , pode haver uma configuração de prompt comentada que deve fazer o que você deseja, como este em nosso infra:

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

O que parece:

coolservername:~# 

Ou se você planeja fazer o login como não-root, você pode usar:

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

para adicionar o nome de usuário antes do nome do host.

Você pode se divertir adicionando cores, multilinhas ou qualquer informação que desejar no prompt, uma pesquisa rápida em "prompts bash" deve lhe dar muitas dicas.

    
por 24.07.2015 / 16:44
4

Eu gosto quando o prompt do shell mostra o nome de usuário, o nome do host e o nome do diretório de trabalho. Além disso, eu gosto quando tudo isso é mostrado em cores. Então eu costumo colocar

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

em ~/.bashrc . Para aplicar as alterações imediatamente, ligue para

. ~/.bashrc

Além disso, se você mudar para root usando su , é bom ver o prompt do bash em uma cor diferente, para que você tenha cuidado extra. Para isso eu adiciono a linha

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

em /root/.bashrc . E ligue para

. /root/.bashrc

para aplicar as alterações. Então parece que isso

Muitasvezes,osadministradoresdoservidorVPSfornecemnomesdehostestúpidos.Paraalterá-lo,abra/etc/sysconfig/networkealterealinha

HOSTNAME=put_what_you_want_to_see_in_bash_prompt_here

Sevocêquisercoresdiferentesparausername@hostpart,énecessárioalterar0;32mpartenoprimeiroexemploou0;31mpartenosegundoexemplo.Alistadecoresdisponíveispodeserencontrada aqui

Como .bashrc é executado para shells que não são de login, não se esqueça de verificar que

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

está presente em ~/.bash_profile , pois ~/.bash_profile é executado no seu login. E também adicione a mesma peça em /root/.bash_profile .

    
por 11.07.2016 / 19:00
0

Além de alterar o prompt, há uma opção na configuração de konsole e o emulador de terminal do gnome, que mudará a barra de título (ou o título da guia).

    
por 24.07.2015 / 16:50