1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2025-07-28 03:27:44 +00:00

env: add support for new '--file' option (includes testing)

.# Discussion

This commit adds support for a '-f'/'--file' option which reads "KEY=VALUE" lines from
a config (or ini) style text file and sets the corresponding environment key. This is
modeled after the same option in the `dotenv` and `godotenv` commands. Notably, this
commit does *not* add automatic loading of ".env" configuration files.

The environment variables set by reading the configuration file are set prior to any
unset (eg, `-u BAR`) or set (eg, `FOO=bar`) actions. Files are loaded in order with
later files overwriting any overlapping environment variables, then, unset actions (in
command line order) are executed, then, finally, set actions (in command line order)
are executed.

[1] [`dotenv`](https://github.com/bkeepers/dotenv)
[2] [`godotenv`](https://github.com/joho/godotenv)
This commit is contained in:
Roy Ivy III 2019-04-28 10:19:14 -05:00
parent 9dc31cc1ce
commit 31655fc004
4 changed files with 80 additions and 1 deletions

4
tests/fixtures/env/vars.conf.txt vendored Normal file
View file

@ -0,0 +1,4 @@
# comment
FOO=bar
BAR="bamf this"