【发布时间】:2014-07-04 11:19:37
【问题描述】:
我如何让sudo -E 真正保护它的环境。假设我有一个
pre-down python /usr/local/myscripts/pre_down.py
在我的/etc/network/interfaces with/usr/local/myscripts/pre_down.py`中
import a
和/home/user/scripts/a.py
print 'a'
和/home/user/scripts/__init__.py 存在,为什么sudo PYTHONPATH=/home/user/scripts ifdown eth1 会导致
Traceback (most recent call last):
File "/usr/local/myscripts/pre_down.py", line 1, in <module>
import a
ImportError: No module named a
?我知道编写一个 sh 脚本作为包装器可以解决问题(尝试并成功使用内容PYTHONPATH=/home/user/scripts /usr/local/myscripts/pre_down.py),以及在导入语句之前操作sys.path。我问是为了学习:)
【问题讨论】:
标签: python bash environment-variables