如何在鱼壳中设置环境variables
有人可以告诉我在鱼壳中设置一堆环境variables的正确方法是什么?
在我的.config / fish / config.fish文件中,我有一个函数来设置我的环境variables
function setTESTENV set -x BROKER_IP '10.14.16.216' set -x USERNAME 'foo' set -x USERPASS 'bar' end
当我从命令提示符setTESTENV
并在命令行中执行一个环境,我没有看到这些信息。
你声明的variables保存在函数内的本地作用域中。
使用:
set -g -x
这里“ g
”是全球性的。
使用通用variables
如果必须在当前计算机上的所有当前用户鱼实例之间共享该variables,并在重新启动 shell时保留该variables,则必须使用-U
或--universal
:
set -Ux FOO bar
在-g
或--global
中使用set
不会在shell实例之间持久地设置variables
鱼的环境variables
我想补充一点,虽然@ JosEduSol的答案是不正确的,并有助于解决OP问题, -g
只是将范围设置为全局,而-x
则导致指定的环境variables被导出到subprocess。
上述失败的原因是因为@cfpete在一个函数中设置了envvariables,而默认的作用域将是该函数的本地variables。