プログラムを対話形式で実行すると、問題なく動作します。
ssh somehost
$ ~/some/path/somescript.py
sshでプログラムを直接実行すると、機能しません。ソースされていないPYTHONPATHため、変数は設定されて.bashrcいません。
ssh somehost ~/some/path/somescript.py
を実行するとssh somehost 'source ~/.bashrc; ~/some/path/somescript.py'、正常に動作します。
しかし、後者はtcshを使用していて、まったく持っていないなど、他の一部の人には機能しません~/.bashrc。
何がすべてのシェルのために働く別のホスト上でssh経由の事を実行するコマンドは?
bash、その後、その発生源.bash_profileや.profile対話的なログインのために、そして.bashrc非対話型ログインのため。ログインシェルがbashとして起動されたsh場合、またはashまたはkshの場合.profile、対話型ログインのソースとなり、非対話型ログインのソースはありません。