当我交互式运行程序时,它可以正常运行:
ssh somehost
$ ~/some/path/somescript.py
当我直接通过ssh运行程序时,它不起作用。该变量PYTHONPATH未设置,因为.bashrc它不是源变量。
ssh somehost ~/some/path/somescript.py
如果我运行ssh somehost 'source ~/.bashrc; ~/some/path/somescript.py',它将正常运行。
但是后者不适用于其他一些人,例如,使用tcsh却根本不使用a ~/.bashrc)。
通过ssh在适用于所有shell的另一台主机上运行事物的命令是什么?
bash,则它作为源.bash_profile或.profile用于交互式登录,以及.bashrc用于非交互式登录。如果您的登录Shell是bash as sh或ash或ksh 调用,则它将.profile为交互式登录提供资源,而为非交互式登录提供任何资源。