source: Set environment variables from file |
http://stackoverflow.com/questions/19331497/ddg#20909045
Example
.env
$login_name=me $login_pass=secret
Script
export $(grep -v '^#' .env | xargs)echo$login_name me echo $login_pass secret
This might be helpful:
export $(cat .env | xargs) && rails cReason why I use this is if I want to test
.envstuff in my rails console.gabrielf came up with a good way to keep the variables local. This solves the potential problem when going from project to project.
env $(cat .env | xargs) railsI've tested this with
bash 3.2.51(1)-releaseUpdate:
To ignore lines that start with
#, use this (thanks to Pete's comment):export $(grep -v '^#' .env | xargs)And if you want to
unsetall of the variables defined in the file, use this:unset $(grep -v '^#' .env | sed -E 's/(.*)=.*/\1/' | xargs)Update:
To also handle values with spaces, use:
export $(grep -v '^#' .env | xargs -d '\n')on GNU systems or:
export $(grep -v '^#' .env | xargs -0)on BSD systems.
--Silas Paul
- Log in to post comments
