我有一個變量.ENV文件中像這樣運行:添加.ENV vairables爲給定的命令
HELLO=world
SOMETHING=nothing
我發現這個真棒腳本有一天,那把這些變量到當前會話所以當我運行像這樣
$(cat ./.env | grep -v ^# | xargs) && node test
然後我可以訪問test.js
節點文件中的變量。
console.log(process.env.HELLO)
console.log(process.env.SOMETHING)
這樣做的問題是,命令將.ENV變量在整個會話,所以當我運行node test
沒有$(cat ./.env | grep -v ^# | xargs)
我運行後,它會仍然可以訪問這些變量,我正在寫一個node.js測試考慮了這些變量,我很樂意能夠在不使用這些.env變量的情況下運行相同的命令,而不必擔心它們是否仍在會話中。理想情況下,我想運行
put-env-variables-for-this-command-first-command node test && node test
並且env變量僅在測試腳本第一次運行時纔可用。
慶典讓你做具體的'FOO =酒吧。/ script'變量,設置$ FOO的「劇本」的生活。 – 2015-03-30 20:31:20
@MarcB我如何以編程方式'貓'腳本的生命'.env'的內容?假設我在'.env'中有20個變量我不想每次都手動寫入它們:/ – ThomasReggi 2015-03-30 20:31:47