关于 python 设置环境变量的问题

2016-11-23 16:48:50 +08:00
 zcrdhm
小弟是新学 python 的,最近有一个小程序。使用 python 设置环境变量。

但是小弟发现在 python 进程中设置的环境变量只有在 python 进程中才可以使用。对当前用户的环境变量不会有任何修改。。

请问如何使用 python 改变当前用户在 linux 操作系统下的环境变量呢??

操作系统: redhat 6.5 X64 企业版

当前 shell : csh

python 版本: python 2.7

当前用户:非 root

需求:使用 python 脚本设置环境变量后,在 csh 中使用 env 可以查看到。

谢谢各位大爷!~~~~
2022 次点击
所在节点    Python
3 条回复
loading
2016-11-23 16:52:44 +08:00
用 python 读写 .xinit 文件
zcrdhm
2016-11-23 17:02:40 +08:00
@loading 能详细点么???
sylecn
2016-11-23 17:53:16 +08:00
>> 在 python 进程中设置的环境变量只有在 python 进程中才可以使用。对当前用户的环境变量不会有任何修改。。

这不是 python 的问题。 linux 环境变量都是继承父进程的。
如果你在.xsession 中设置环境变量,会对整个 X 会话生效。
如果你在.bashrc 中设置环境变量,会对所有 bash 生效。
如果桌面环境要增加“全局”的环境变量,必须注销、重新登录。

如果想绕过这个限制,就在设置环境变量之后,在同一个进程启动目标程序。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/322709

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX