Por que meu prompt personalizado não é exibido no Ubuntu / Bash no Windows 10?

3

Eu adicionei isso ao meu ~/.bash_profile em "Bash no Ubuntu no Windows" (e eu tenho git instalado):

# Get the Git branch
parse_git_branch() {
  git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ ()/'
}

# Custom bash prompt
#
# Includes custom character for the prompt, path, and Git branch name.
#
# Source: kirsle.net/wizards/ps1.html
export PS1="\n\[$(tput bold)\]\[$(tput setaf 5)\] \[$(tput setaf 6)\]\w\[$(tput setaf 3)\]$(parse_git_branch) \[$(tput sgr0)\]"

Ao entrar em um novo shell bash, não vejo essa alteração em efeito. O que estou fazendo errado?

Meu ~/.bashrc está intocado e em seu padrão.

Se eu adicionar o código acima a ~/.bashrc , funcionará. Mas não quero atacar com personalizações.

    
por fredrik 11.10.2016 / 09:20

1 resposta

5

Em "Bash no Ubuntu no Windows", o shell aberto não é um "shell de login", o que significa que .bash_profile não está sendo lido, como mencionado por @Zanna (obrigado!).

Você pode usar shopt para ver se você está em um "login shell" ou não:

shopt login_shell

Como desejo manter tudo organizado e colocar personalizações em seus próprios arquivos, agora estou fazendo o sourcing de um arquivo personalizado de .bashrc :

  . ~/.bashrc_customizations
    
por fredrik 11.10.2016 / 09:58

Tags