我有一个包含myenv.sh
以下内容的文件 ( )
export MYVAR="HELLO"
然后我有我的程序(myhugeprogram.py
):
#!/usr/bin/env python
import os
print os.environ['MYVAR']
哪个是可执行的:chmod 755 myhugeprogram.py
现在我获取我的环境:source myenv.sh
并运行我的程序:
./myhugeprogram.py
HELLO
正如预期的那样。现在我通过 SSH 以非交互方式运行它:
user1@host1:~$ ssh user2@host2 ./myhugeprogram.py
Traceback (most recent call last):
File "./myhugeprogram.py", line 3, in <module>
print os.environ['MYVAR']
File "/usr/lib/python2.5/UserDict.py", line 22, in __getitem__
raise KeyError(key)
KeyError: 'MYVAR'
这很正常,因为我没有采购myenv.sh
. 现在的问题:
在通过 SSH 以非交互方式运行时,如何在执行我的 Python 脚本之前获取一个设置一些环境变量的 Bash 文件?