Trilha GNU/Linux |
Estudos |
Perguntas |
Hacks |
Recursos
Listar
arquivos carregados na inicialização do Bash
Opções de início do bash
-l
- Força o início como shell de login.
-i
- Força o início como um shell interativo.
-x
- Exibe expansões e comandos executados por
STDERR
.
-c
- Executa uma string como uma lista de
comandos.
Shell interativo de login
$ bash -lixc exit 2>&1 | sed -rn '/^\++ \. /p'
+ . /etc/bash.bashrc
+ . /etc/profile.d/bash_completion.sh
++ . /usr/share/bash-completion/bash_completion
+++ . /etc/bash_completion.d/git-prompt
++++ . /usr/lib/git-core/git-sh-prompt
+ . /etc/profile.d/flatpak.sh
+ . /etc/profile.d/gawk.sh
+ . /etc/profile.d/vte-2.91.sh
+ . /home/blau/.bashrc
++ . /usr/share/bash-completion/bash_completion
+++ . /etc/bash_completion.d/git-prompt
++++ . /usr/lib/git-core/git-sh-prompt
++ . /home/blau/.bash_aliases
++ . /home/blau/.bash_functions
++ . /home/blau/lib/tmux-prompt
- Quem carrega
/etc/bash.bashrc
é o arquivo
/etc/profile
.
- Quem carrega o
~/.bashrc
, no meu caso, é o arquivo
~/.profile
, carregado pelo Bash numa sessão de login.
- Se eu tivesse um arquivo
~/.bash_profile
, ele é que
seria carregado pelo Bash.
Shell interativo “não-login”
$ bash -ixc exit 2>&1 | sed -rn '/^\++ \. /p'
+ . /usr/share/bash-completion/bash_completion
++ . /etc/bash_completion.d/git-prompt
+++ . /usr/lib/git-core/git-sh-prompt
+ . /home/blau/.bash_aliases
+ . /home/blau/.bash_functions
+ . /home/blau/lib/tmux-prompt
- Como
/etc/bash.bashrc
não aparece na saída, deduz-se
que /etc/profile
também não foi carregado.
- Numa sessão interativa “não-login”, o
~/.bashrc
é
carregado pelo próprio Bash.
Shell não interativo
$ bash -xc exit 2>&1 | sed -rn '/^\++ \. /p'
$
- Sessões não interativas não carregam nada: as variáveis do ambiente
são exportadas pelas sessões mães.
Tags: bash, arquivos de início, source