Skip to main content

std.env

std.env exposes environment variables and command-line arguments.

Reference

get(name) // value, or null if unset
set(name, value)
unset(name)
all() // object of all environment variables
args() // command-line arguments (empty in embedded mode)

Examples

std.env.set("APP_MODE", "prod")
print(std.env.get("APP_MODE")) // prod

print(std.env.get("NO_SUCH_VAR")) // null
print(keys(std.env.all())) // all variable names

std.env.unset("APP_MODE")
print(std.env.get("APP_MODE")) // null

// command-line arguments (empty when embedded)
var argv = std.env.args()
print("received", len(argv), "argument(s)")
for (a : argv) { print(a) }

// iterate all variables
for ([k, v] : std.env.all()) {
print(k + "=" + v)
}

all() returns an object whose keys are variable names and values are their string values. Use keys/has from Builtins to inspect it.

See also

  • std.pathexpand uses these variables
  • std.file — paths with $VAR expansion
  • std.osstd.system for spawning processes with an environment