我有一个环境变量,我使用profile.d设置(在Centos 6上),如下所示:
[bankap@tnt-integration-test ~]$cat /etc/profile.d/tnt.sh
TNT_SERVER_URL=http://tnt-integration-test:8000/
当我登录时,我看到变量:
[bankap@tnt-integration-test ~]$echo $TNT_SERVER_URL
http://tnt-integration-test:8000/
但是当我使用Python访问该东西时,环境变量不会显示出来!
[bankap@tnt-integration-test ~]$python -c 'import os;os.environ.get("TNT_SERVER_URL")'
Traceback (most recent call last):
File "", line 1, in
NameError: name 'TNT_SERVER_URL' is not defined
我甚至尝试使用ctypes库,结果相同:
>>> os.getenv('TNT_SERVER_URL')
>>> from ctypes import CDLL, c_char_p
>>> getenv = CDLL('libc.so.6').getenv
>>> getenv('TNT_SERVER_URL')
0
>>>
但其他变量恰好通过……
<