1. 환경변수 모두 가져오기
Go에서 환경변수를 사용하기 위해서는 os 패키지를 import하여 필요한 메서드를 호출하면 된다. 먼저, 모든 환경변수를 한꺼번에 가져오기 위해서는, os.Environ() 메서드를 사용한다. 이 메서드는 인덱스와 환경변수값(형식: 이름=값)을 컬렉션으로 리턴하는데, for range 루프를 사용하여 아래 예제와 같이 출력할 수 있다.
package main
import (
"fmt"
"os"
)
func main() {
// 모든 환경변수 출력
for index, env := range os.Environ() {
fmt.Println(index, env)
}
}
2. 환경변수 읽기/쓰기
Go에서 환경변수를 읽고 위해서는 os.Getenv() 메서드를 사용하고, 쓰기 위해서는 os.Setenv() 메서드를 사용한다. 아래 예제는 사용자명인 USERNAME 환경변수 값을 읽는 예와 임의의 환경변수 TestEnv에 ABC라는 값을 쓰는 예를 든 것이다.
package main
import (
"fmt"
"os"
)
func main() {
// 환경변수 읽기
usr := os.Getenv("USERNAME")
fmt.Println(usr)
// 환경변수에 쓰기
os.Setenv("TestEnv", "ABC")
fmt.Println(os.Getenv("TestEnv"))
}