Функция os.Getenv

Функция os.Getenv получает значение переменной окружения. В первый параметр она принимает имя переменной окружения в виде строки. Функция возвращает значение переменной как строку. Если переменная окружения не установлена, возвращается пустая строка.

Синтаксис

goos.Getenv(key)

В качестве аргумента функция принимает имя переменной окружения.

Пример

Давайте получим значение переменной окружения 'GOPATH':

gopackage main

import (
  "fmt"
  "os"
)

func main() {
  res := os.Getenv("GOPATH")
  fmt.Printf("GOPATH: %s", res)
}

Результат выполнения кода:

go"GOPATH: /home/user/go"

Если переменная 'GOPATH' не установлена, то вывод будет следующим:

go"GOPATH: "

Пример

Давайте проверим, установлена ли переменная окружения 'HOME':

gopackage main

import (
  "fmt"
  "os"
)

func main() {
  home := os.Getenv("HOME")
  if home != "" {
    fmt.Println("HOME is set to:", home)
  } else {
    fmt.Println("HOME is not set")
  }
}

Результат выполнения кода:

go"HOME is set to: /home/user"

Пример

Давайте получим значение переменной окружения с настройками приложения:

gopackage main

import (
  "fmt"
  "os"
  "strconv"
)

func main() {
  portStr := os.Getenv("PORT")
  port, err := strconv.Atoi(portStr)
  if err != nil {
    port = 8080 // default port
  }
  fmt.Println("Server port:", port)
}

Результат выполнения кода:

go"Server port: 8080"

Смотрите также

  • функцию os.Setenv,
    которая устанавливает значение переменной окружения
  • функцию os.Unsetenv,
    которая удаляет переменную окружения
  • функцию os.LookupEnv,
    которая проверяет существование переменной окружения
  • функцию os.Environ,
    которая возвращает все переменные окружения