在.env中设置带空格的变量

时间:2015-04-02 21:29:21

标签: bash environment-variables env

我有一个包含大量变量的.env文件,我发现了一个错误。

其中一个变量有空格。

TEST="hello world"

所以当我运行时,learned about in this answer here.

env $(<.env)

我收到此错误。

env: world"': No such file or directory

如何在.env?

中设置带空格的变量

2 个答案:

答案 0 :(得分:4)

juste 把包含空格的单词放在“”之间。

答案 1 :(得分:1)

如果您的命令只是一个shell命令,您可以在子shell中运行命令,如下所示:

( . .env ; echo "$TEST" )

source.内置版包含空格的分配没有问题。它将在当前shell环境中的.env文件中设置变量。

在更有可能调用外部程序的情况下,您还必须为env文件中的每个作业添加“导出”,如下所示:

export TEST="hello world"

这是必要的,因为source不会像env那样导出指定的变量,即它们只在子shell中设置,但不在子shell中启动的另一个进程的环境中。