Como forçar a tela do Gnu a carregar meu perfil de bash

18

Eu tenho ~ / .bash_profile que gostaria de ser chamado toda vez que uma nova tela GNU for criada, para que todos os meus aliases funcionem na tela GNU, assim como no terminal.

Neste momento, é assim que o meu ~ / .screenrc se parece.

hardstatus on
hardstatus alwayslastline
hardstatus string "%{.bW}%-w%{.rW}%n %t%{-}%+w %=%{..G} %H %{..Y} %m/%d %C%a "
Nadal
fonte
11
Resolvi esse problema movendo todo o conteúdo de ~ / .bash_profile para ~ / .bashrc. Aparentemente, a tela chama ~ / .bashrc antes de cada janela.
Nadal

Respostas:

30

shell -$SHELL

Adicione a linha acima ao seu ~/.screenrc, isso fará a inicialização da tela usando um shell de login que carregará o seu ~/.bash_profile.

Rodrigue
fonte
Isso interrompe a tela que começa no diretório atual. Como faço para iniciar a tela no diretório atual?
theonlygusti
2

Alguns aplicativos para Mac contam com .bash_profile e outros com .bashrc. Eu não descobri nenhuma regra específica para saber qual deles está sendo carregado, mas por consistência, esse é o meu .bash_profile:

if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
Munkymorgy
fonte
0

O problema é um pouco vago; os arquivos de inicialização do shell são executados por tela após a criação do Windows, para que você não sinta que algo está configurado incorretamente no seu .bashrc ou .bash_profile. Eu não encontrei isso usando a tela no OS X.

Você já tentou o iTerm em vez da tela? Eu o uso exclusivamente no meu Mac e, em seguida, uso a tela nos servidores que administro.

AlG
fonte
0

Resolvi esse problema movendo todo o conteúdo de ~ / .bash_profile para ~ / .bashrc. Aparentemente, a tela chama ~ / .bashrc antes de cada janela. - Nadal 6 / mai / 10 às 21:22

Este comentário é a resposta certa.

Odalrick
fonte
0

Eu adicionei um arquivo .bashrc que apenas contém:

[[ -s ~/.bash_profile ]] && source ~/.bash_profile

Dessa forma, qualquer programa como a tela GNU que procure por .bashrc o encontrará e obterá meu .bash_profile.

Ed Leafe
fonte