Não é necessariamente executado; no topo do padrão .bashrc é este comentário:
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
Eu acredito que há uma opção para executar o terminal bash como um shell de login ou não. Com o Ubuntu, o gnome-terminal normalmente não é executado como um shell de login, então .bashrc deve ser executado diretamente.
Para shells de login (como os terminais virtuais), normalmente o arquivo ~/.profile
é executado, a menos que você tenha ~/.bash_profile
ou ~/.bash_login
, mas eles não estão lá por padrão. Por padrão, o Ubuntu usa apenas .profile.
O padrão ~/.profile
tem isso:
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
Isso executará .bashrc, se estiver disponível - supondo que $ BASH_VERSION esteja presente em seu ambiente. Você pode verificar isso digitando o comando echo $BASH_VERSION
, e ele deve exibir algumas informações sobre o número da versão - ele não deve ficar em branco.