我有一个包含大量变量的.env
文件,我发现了一个错误。
其中一个变量有空格。
TEST="hello world"
所以当我运行时,learned about in this answer here.
env $(<.env)
我收到此错误。
env: world"': No such file or directory
如何在.env?
中设置带空格的变量答案 0 :(得分:4)
juste 把包含空格的单词放在“”之间。
答案 1 :(得分:1)
如果您的命令只是一个shell命令,您可以在子shell中运行命令,如下所示:
( . .env ; echo "$TEST" )
source
或.
内置版包含空格的分配没有问题。它将在当前shell环境中的.env
文件中设置变量。
在更有可能调用外部程序的情况下,您还必须为env
文件中的每个作业添加“导出”,如下所示:
export TEST="hello world"
这是必要的,因为source
不会像env
那样导出指定的变量,即它们只在子shell中设置,但不在子shell中启动的另一个进程的环境中。