猿问

如何在 golang 中同时加载 .env 文件和 os 环境变量

错误 := godotenv.Load(".env") 如果错误 != nil { panic(err.Error()) }

shell := os.Getenv("SHELL") fmt.Println(shell)

我在我的 .env 文件中设置了 SHELL=/bin/zsh 但它似乎是操作系统首先在操作系统环境变量列表中查找给定的密钥,然后它检查 .env 文件。有没有办法将这两者分开?


慕勒3428872
浏览 401回答 1
1回答

qq_笑_17

是的,有办法解决这个问题。有github.com/joho/godotenv一个函数叫做Read()。您可以将 .env 文件加载到地图数据结构中。envFile, _ := godotenv.Read(".env")envFileShell = envFile["SHELL"]fmt.Println(envFileShell) // will be /bin/zsh (what you set in .env file)osShell := os.Getenv("SHELL") fmt.Println(osShell) // will be whatever it is set in your operating system 
随时随地看视频慕课网APP

相关分类

Go
我要回答