.bashrc não é executado

10

Eu tenho um usuário (não raiz) que possui um ~/.bashrcarquivo com alguns aliases.

Mas não parece que o arquivo seja executado no tempo de logon. Se eu fizer source ~/.bashrc, ele faz o que deveria. Mas não ~/.bashrcdeve ser executado toda vez que eu fizer login?

As permissões estão definidas para 644 (o mesmo que o da minha raiz .bashrc, que funciona bem). O arquivo pertence ao usuário em questão.

NullUser
fonte
Este é um dos vários aborrecimentos que os usuários do ksh experimentam ao lidar com o bash. O ksh origina automaticamente .kshrc em um shell de login, mas o bash não origina .bashrc no mesmo contexto. Você tem que fazer isso explicitamente.
Jlliagre

Respostas:

18

~/.bashrcé para shells interativos sem login . Origem dos shells de login ~/.bash_profile(ou ~/.bash_loginou ~/.profile). Fornecer o seu ~/.bashrclá permitirá que você tenha configurações comuns.

AProgrammer
fonte
1
Ou fonte .bash_profilede.bashrc , o que pode fazer sentido quando você usa principalmente shells interativos.
janmoesen
Senti a necessidade de fazer coisas para os shells de login que não foram feitos para um interativo sem login, nunca o contrário.
APROGRAMMER #
Portanto, " pode fazer sentido": eu sei que isso pode parecer inverso. :-)
janmoesen
É possível configurar um sistema redhat para ignorar .bashrc ao executar tarefas não interativas? Eu uso um cluster que parece realmente usar o .bash_profile (o meu carrega o .bashrc). Sem o .bash_profile, os trabalhos não podem encontrar as coisas que eu tenho adicionado ao PATH no arquivo rc
user632657