Não há arquivo padrão por usuário que seja executado para logins não interativos. Você precisa tornar o programa independente, para que ele possa localizar suas dependências sem depender de variáveis de ambiente não-padrão, ou então definir explicitamente o ambiente, normalmente com
ssh somehost '. ~/.profile; exec ~/some/path/somescript.py'
Você não deve definir variáveis de ambiente em .bashrc
: este arquivo é destinado a shells interativos e é lido em cada instância do bash. As variáveis de ambiente devem ser definidas em .profile
, que é lido quando você efetua login. Além do número muito pequeno de pessoas que não usam shell estilo Bourne como shell de login, .profile
funciona para todos, seja eles usam bash ou zsh ou csh ou peixe de forma interativa. Veja também
Diferença entre .bashrc e .bash_profile ,
Quais arquivos de configuração devem ser usados para configurar variáveis de ambiente com o bash? .
Dito isto, existe uma maneira de criar um script toda vez que você faz o login no ssh com uma chave específica. Veja Existe uma maneira de enviar informações de configuração do shell quando SSHing para um host? , arquivos de inicialização sh sobre ssh .