Não, ~/.bashrc
não inicia um novo shell.
O arquivo de inicialização ~/.bashrc
é originado , isto é, lido e executado no mesmo ambiente que o shell que o invocou (não executado como um script).
O shell está basicamente fazendo source ~/.bashrc
ou . ~/.bashrc
para executar o conteúdo do arquivo sem gerar uma nova instância do shell.
Quando você executa export variable=value
na linha de comando (ou variable=value; export variable
), define variable
para value
e marca a variável como "exportada", isto é, ela é transformada em uma variável de ambiente que será herdado por processos subsequentes iniciados a partir do mesmo shell. Nenhum novo shell é iniciado por export
.