Executando verificação de segurança...
12

Só pra constar, a parte importante relativa ao título ("Deixar o $ do bash na linha abaixo") é somente o \n:

export PS1="\[$(tput bold)\]\[$(tput setaf 2)\]\u@\h\[$(tput setaf 7)\]:\[$(tput setaf 4)\]\W\n\[$(tput setaf 7)\]$ \[$(tput sgr0)\]"
                                                                                             ^^
                                                                                             aqui

Pois o \n corresponde à quebra de linha, ou seja, é ele que faz com que a linha seja pulada. E depois dele temos \[$(tput setaf 7)\], que basicamente seta a cor dos caracteres para branco (veja a lista completa de códigos de cores aqui). E logo em seguida temos o próprio caractere $.


Enfim, se o objetivo é deixar o $ na linha de baixo, bastaria adicionar \n$ no final. Todo o resto não tem relação nenhuma com a quebra de linha:

  • Os comandos tput são relativos à mudança no texto:
    • tput setaf para mudar as cores
    • tput bold para deixar o texto em negrito
    • tput sgr0 para "limpar as configurações anteriores": sem isso, tudo que vc digitasse no prompt ficaria em negrito (já que o bold ainda estaria ativo) e com a última cor que foi setada
  • as sequências de escape \u, \h e \W são respectivamente o usuário, hostname e diretório atual (existem mais sequências disponíveis, veja aqui).

E como sugestão, daria para deixar um pouco menos confuso se vc fizer algo do tipo no seu .bashrc:

PS_GREEN=$(tput setaf 2)
PS_BLUE=$(tput setaf 4)
PS_WHITE=$(tput setaf 7)
PS_RESET=$(tput sgr0)
PS_BOLD=$(tput bold)
export PS1="${PS_BOLD}${PS_GREEN}\u@\h${PS_WHITE}:${PS_BLUE}\W\n${PS_WHITE}$ ${PS_RESET}"
Carregando publicação patrocinada...
2
2

Outra informação interessante é que o \W exibe o diretório atual, como você escreveu. Mas eu acho mais prático ter o caminho completo do local atual, já que, pelo menos para mim, jogar o cursor para baixo é justamente útil porque os comandos não precisam competir com o espaço do caminho do diretório. Então ao invés de colocar \W é só colocar \w (w minúsculo).

0

Aparentemente a ideia do post era adicionar uma quebra de linha antes do $ então (dado o contexto) acaba que tem relação a complicação, sem ela o prompt quebra as cores:

Imgur