Exibindo uma nova linha no prompt

53

Desejo adicionar uma nova linha em cada prompt. Em vez de o cursor aparecer na linha como name@machine:~$ _,

Quero que seja na próxima linha, como:

name@machine:~$
_

Obrigado.

theTuxRacer
fonte

Respostas:

69
  • Abra o arquivo ~/.bashrc(ou /etc/bash.bashrcse ele funcionar globalmente para todos os usuários).

  • Localize a variável chamada PS1.

  • Basta colocar um \nno final do valor da PS1variável.

htorque
fonte
18
A maneira mais fácil de fazer isso é adicionar PS1 = "$ PS1 \ n" na parte inferior do seu arquivo ~ / .bashrc.
Dennis VanMeter
3
Acho que é mais fácil de manter - por que não torná-lo uma nova resposta? :)
htorque
sim, eu fiz isso. havia muitas linhas para anexar \ n, então criei uma nova variável.
theTuxRacer
8

Eu prefiro usar um .bashrcarquivo personalizado

Primeiro, acrescente as seguintes linhas ao seu ~/.bashrcarquivo:

##
## INCLUDE CUSTOM `.bashrc` CODE
##
if [ -f ~/.bashrc_custom ]; then
    . ~/.bashrc_custom
fi

Crie o arquivo personalizado:

touch ~/.bashrc_custom`

Por fim, abra-o e coloque as seguintes linhas em:

# File: $HOME/.bashrc_custom
# THIS FILE IS A USER-CUSTOM BASHRC FILE TO KEEP CLEAN THE DEFAULT ~/.barshrc FILE.
# PUT THERE ANY CUSTOM CODE MANUALLY ADDED BY YOU


# Add a new line at the end of the command prompt
#PS1=${PS1}\\n
PS1=${PS1%?}
PS1=${PS1%?}\n'$ '

A próxima sessão de shell aberta terá a seguinte aparência:

user@host:~
$ <your-next-command-will-be-rendered-here>
Rémi B.
fonte
4
Por que você recomenda usar o arquivo .bashrc personalizado? Não é exatamente por que .bashrc existe em seu diretório pessoal? Entendo que você pode usar e modificar o .bashrc gerado por padrão, mas quando você quiser usar o .bashrc em outros sistemas operacionais não é possível, porque depende do arquivo .bashrc padrão e, se não for o mesmo, pode se comportar de maneira diferente.
Michal Bernhard