获取和设置环境变量

导出 just 变量

export 关键字为前缀的赋值将作为环境变量导出到配方中:

export RUST_BACKTRACE := "1"

test:
  # 如果它崩溃了,将打印一个堆栈追踪
  cargo test

$ 为前缀的参数将被作为环境变量导出:

test $RUST_BACKTRACE="1":
  # 如果它崩溃了,将打印一个堆栈追踪
  cargo test

导出的变量和参数不会被导出到同一作用域内反引号包裹的表达式里。

export WORLD := "world"
# This backtick will fail with "WORLD: unbound variable"
BAR := `echo hello $WORLD`
# Running `just a foo` will fail with "A: unbound variable"
a $A $B=`echo $A`:
  echo $A $B

export 被设置时,所有的 just 变量都将作为环境变量被导出。

从环境中获取环境变量

来自环境的环境变量会自动传递给配方:

print_home_folder:
  echo "HOME is: '${HOME}'"
$ just
HOME is '/home/myuser'

.env 文件加载环境变量

如果 dotenv-load 被设置,just 将从 .env 文件中加载环境变量。该文件中的变量将作为环境变量提供给配方。参见 环境变量集成 以获得更多信息。

从环境变量中设置 just 变量

环境变量可以通过函数 env_var()env_var_or_default() 传入到 just 变量。 参见 environment-variables