是否有实用程序可以从 env 文件中读取环境变量,然后运行命令(比工头更轻量级)?

wod*_*dow 18 linux unix environment-variables

foreman 可以读取 .env 文件并从内容中设置环境变量,然后运行程序

例如 foreman run -e vars.env myprogram

...但它做了很多其他的事情(并且主要关注使用它的 Procfile 格式开始的事情)。

有没有更简单的(Linux/Unix)工具,它只专注于读取 .env 文件并在新环境中执行命令?

示例环境文件(来自http://ddollar.github.io/foreman/#ENVIRONMENT):

FOO=bar
BAZ=qux
Run Code Online (Sandbox Code Playgroud)

Mar*_*rco 21

您可以在活动 shell 中获取环境文件并运行程序:

sh -ac ' . ./.env; /usr/local/bin/someprogram'
Run Code Online (Sandbox Code Playgroud)

-a开关导出所有变量,以便程序可以使用它们。

  • `bash -ac 'source .env && ./program'` (3认同)
  • @fiatjaf 如果 POSIX shell 完成这项工作并且您不需要实际需要 bash 的功能,那么为什么在这种情况下使用 bash 呢?此外,bash 默认情况下并非在所有系统(例如 FreeBSD)上都可用。 (2认同)