确定环境变量是如何

2024-04-19 11:32:15 发布

您现在位置:Python中文网/ 问答频道 /正文

在Python中,我可以访问以下环境变量:

os.environ['FOO']

我想知道这个变量是以前通过export设置的,还是只为当前的python脚本设置的,比如:

FOO=BAR python some-script.py

基本上,我只想使用FOO,如果它是像上面一行那样设置的,并且不是按照export永久定义的。你知道吗

不幸的是,python脚本本身的参数在这里没有选择。这是一个插件,父应用程序不允许传递它自己不理解的自定义参数。你知道吗

我希望我能以某种方式访问启动python的确切而完整的命令(FOO=BAR python some-script.py),但是看起来没有这样的命令。我想如果有这样的特性,它应该在ossys包中的某个地方。你知道吗


Tags: py命令脚本插件应用程序参数定义foo
1条回答
网友
1楼 · 发布于 2024-04-19 11:32:15

环境只是一个C字符串数组,没有任何元信息可以帮助您确定调用shell是否将变量标记为export。你知道吗

在Linux上,您可以检查父PID的/proc/(pid)/environ(如果您有适当的权限)以查看父级的永久环境中有什么内容,但这显然是不可移植和脆弱的。你知道吗

无论如何,花时间在这上面似乎是错误的;让用户以他们认为合适的任何方式传递环境变量。你知道吗

相关问题 更多 >