环境变量是操作系统上的动态对象对。这些值对可以在操作系统的帮助下进行操作。这些值对可用于存储文件路径、用户配置文件、身份验证密钥、执行模式等。
在 Golang 中,我们可以使用 os 包来读写环境变量。
1.使用 os.Setenv() 设置环境变量。此方法接受两个参数作为字符串。如果有的话,它会返回一个错误。
os.Setenv(key,value)
2.使用 os.Getenv() 获取环境变量值。如果变量存在,则此方法返回变量的值,否则返回空值。
os.Getenv(key)
3.使用 os.Unsetenv() 方法删除或取消设置单个环境变量。如果有错误,此方法将返回错误。
os.Unsetenv(key)
4.使用 os.LookupEnv() 获取环境变量值和布尔值。布尔值表示键是否存在。如果密钥不存在,则返回 false。
os.LookupEnv(key)
5.使用 os.Environ() 列出所有环境变量及其值。此方法返回“ key=value”格式的字符串副本。
os.Environ()
6.使用 os.Clearenv() 删除所有环境变量。
os.Clearenv()
示例 1:
Go
// Golang program to show the usage of
// Setenv(), Getenv and Unsetenv method
package main
import (
"fmt"
"os"
)
// Main function
func main() {
// set environment variable GEEKS
os.Setenv("GEEKS", "geeks")
// returns value of GEEKS
fmt.Println("GEEKS:", os.Getenv("GEEKS"))
// Unset environment variable GEEKS
os.Unsetenv("GEEKS")
// returns empty string and false,
// because we removed the GEEKS variable
value, ok := os.LookupEnv("GEEKS")
fmt.Println("GEEKS:", value, " Is present:", ok)
}
Go
// Golang program to show the
// usage of os.Environ() Method
package main
import (
"fmt"
"os"
)
// Main function
func main() {
// list all environment variables and their values
for _, env := range os.Environ() {
fmt.Println(env)
}
}
Go
// Golang program to show the
// usage of os.Clearenv() Method
package main
import (
"fmt"
"os"
)
// Main function
func main() {
// this delete's all environment variables
// Don't try this in the home environment,
// if you do so you will end up deleting
// all env variables
os.Clearenv()
fmt.Println("All environment variables cleared")
}
输出:
示例 2:
去
// Golang program to show the
// usage of os.Environ() Method
package main
import (
"fmt"
"os"
)
// Main function
func main() {
// list all environment variables and their values
for _, env := range os.Environ() {
fmt.Println(env)
}
}
输出:
示例 3:
去
// Golang program to show the
// usage of os.Clearenv() Method
package main
import (
"fmt"
"os"
)
// Main function
func main() {
// this delete's all environment variables
// Don't try this in the home environment,
// if you do so you will end up deleting
// all env variables
os.Clearenv()
fmt.Println("All environment variables cleared")
}
输出:
All environment variables cleared