2017-09-03 138 views
0

使用环境变量我的〜/ .bashrc文件中使用Python解释器在普通的终端的代码,这两条线工程如何在搅拌机

添加一个环境变量写这两个线路

var="stuff.." 
export var 

import os 
print(os.environ['var']) 

但在搅拌机蟒蛇控制台它产生KeyError异常所以在印刷os.environ列表我可以看到,没有与“变种”作为关键

一个项目因此,我认为这是一个问题在unix系统中使用环境设置。 谁能帮我解释一下如何导出环境变量的其他进程?谢谢对不起英语

回答

2

.bachrc文件(以及类似的如.cshrc)当你的shell启动时读取,同样,当你开始一个GUI桌面外壳RC文件在它开始的时间阅读和当时的变量,然后传递到任何GUI应用程序环境的一部分,由在运行没有得到读取你开始一个新的应用更改。您可以在不同的桌面上使用find ways of setting environment variables。传递环境变量到混合器的

的一种方式是从一个终端窗口启动它。打开终端时将读取rc文件,也可以在启动搅拌器之前手动设置环境变量。

另一种方式来设置环境变量搅拌机是从脚本启动它,这可能是一个叫myblender将在您的$PATH找到或者它也可以被命名为blender,如果将真正的搅拌机前被发现。在这个脚本可以在开始之前搅拌机设置变量和任何更改将生效,当你运行它。

#!/bin/bash 

var="stuff.." 
export var 

exec /usr/local/bin/blender "[email protected]" 
+0

感谢。我对shell脚本不太实用,所以我找到了一篇关于特殊变量的文章。我明白$ @是如何工作的,但不是在这种情况下。你可以解释吗? –

+0

'$ @'是脚本接收的参数列表。在这个例子中,它用于将任何参数传递给搅拌器。所以你可以运行'myblender -b file.blend -a',真正的搅拌器会得到相同的参数并且做你期望的。 – sambler

1

更新〜/ .bashrc后,您必须在启动blender的终端中登录到source ~/.bashrc,或注销并重新登录到您的系统,然后该变量应位于环境中。

如果您需要获得环境变量,可能会或可能无法使用,你也可以这样做os.getenv('var', 'default value')