Você não deve ter definições de variáveis de ambiente em ~/.bashrc
, esse arquivo é para configurações de bash ao executar interativamente (aliases, prompts, esse tipo de coisa). O local para variáveis de ambiente é ~/.profile
; é lido quando você inicia uma sessão interativa no modo de texto e em muitos sistemas também no modo gráfico. Consulte esta resposta para obter mais detalhes.
Para executar um shell bash que define suas variáveis de ambiente normalmente para a máquina remota, você pode fazer
ssh user@IP bash --login runme.sh
Para outros shells, faça-os ler seu .profile
(e talvez /etc/profile
também):
ssh user@IP '. /etc/profile; . ~/.profile; exec runme.sh'
Se você deseja copiar variáveis de ambiente de sua sessão local sobre o ssh, isso é possível, mas geralmente desativado no lado do servidor. Leia esta resposta para mais detalhes.