【go从零单排】Environment Variables环境变量

🌈Don't worry , just coding!
内耗与overthinking只会削弱你的精力,虚度你的光阴,每天迈出一小步,回头时发现已经走了很远。

📗概念

在 Go 语言中,环境变量是用于配置程序行为的一种常见方式。它们可以用于存储配置信息,如数据库连接字符串、API 密钥等。Go 提供了标准库 os 来访问和管理环境变量。

环境变量:

是操作系统级别的变量,通常用于存储配置信息。它们可以通过命令行、脚本或操作系统设置。

获取和设置:

Go 程序可以通过 os.Getenv 获取环境变量,通过 os.Setenv 设置环境变量。

💻代码

go 复制代码
package main

import (
	//os:用于与操作系统交互,特别是处理环境变量。
	//strings:用于字符串操作。
	"fmt"
	"os"
	"strings"
)

func main() {
	//使用 os.Setenv 设置名为 FOO 的环境变量,其值为 "1"。
	os.Setenv("FOO", "1")
	//使用 os.Getenv 获取环境变量 FOO 的值,并打印出来。
	fmt.Println("FOO:", os.Getenv("FOO"))
	//尝试获取环境变量 BAR 的值。如果 BAR 没有被设置,返回的将是空字符串。
	fmt.Println("BAR:", os.Getenv("BAR"))

	fmt.Println()
	//os.Environ() 返回一个字符串切片,其中每个元素都是形如 KEY=VALUE 的环境变量。
	for _, e := range os.Environ() {
		//使用 strings.SplitN(e, "=", 2) 将每个环境变量字符串分割成键值对,最多分割为两个部分(键和值)。
		pair := strings.SplitN(e, "=", 2)
		//只打印每个环境变量的键(名称)。
		fmt.Println(pair[0])
	}
}

//输出
//FOO: 1
//BAR:
//
//GOLAND_VM_OPTIONS
//GOPATH
//DATAGRIP_VM_OPTIONS
//...其他环境变量

🔍理解

设置环境变量:

  • os.Setenv 用于设置新的环境变量或更新现有的环境变量。

获取环境变量:

  • os.Getenv 用于获取环境变量的值,如果变量不存在,则返回空字符串。

列出所有环境变量:

  • os.Environ() 返回所有环境变量的键值对,使用 strings.SplitN 将其分割为键和值。

注意事项:

  • 在运行程序时设置的环境变量仅在该进程及其子进程中可用,不会影响父进程的环境变量。
  • 没有被设置的环境变量输出是空的。

💪无人扶我青云志,我自踏雪至山巅。

相关推荐
朝花不迟暮8 分钟前
Go基础-闭包
android·开发语言·golang
西京刀客2 小时前
go语言-切片排序之sort.Slice 和 sort.SliceStable 的区别(数据库分页、内存分页场景注意点)
后端·golang·sort·数据库分页·内存分页
黄昏单车3 小时前
golang语言基础到进阶学习笔记
笔记·golang·go
moxiaoran575313 小时前
Go语言结构体
开发语言·后端·golang
Tony Bai20 小时前
Cloudflare 2025 年度报告发布——Go 语言再次“屠榜”API 领域,AI 流量激增!
开发语言·人工智能·后端·golang
小徐Chao努力1 天前
Go语言核心知识点底层原理教程【变量、类型与常量】
开发语言·后端·golang
锥锋骚年1 天前
go语言异常处理方案
开发语言·后端·golang
moxiaoran57531 天前
Go语言的map
开发语言·后端·golang
小信啊啊1 天前
Go语言数组
开发语言·后端·golang
IT艺术家-rookie1 天前
golang-- sync.WaitGroup 和 errgroup.Group 详解
开发语言·后端·golang