Функция syscall.Getenv
Функция syscall.Getenv возвращает значение переменной окружения
по её имени. Она принимает один параметр — строку с именем переменной
окружения, а возвращает строку с её значением. Если переменная не
установлена, функция возвращает пустую строку.
Важно отметить, что функция syscall.Getenv является устаревшей
и находится в пакете syscall, который помечен как устаревший.
В современном Go рекомендуется использовать функцию os.Getenv
из пакета os, которая работает аналогичным образом.
Синтаксис
syscall.Getenv(name)
Пример
Давайте получим значение переменной окружения 'GOPATH':
package main
import (
"fmt"
"syscall"
)
func main() {
res := syscall.Getenv("GOPATH")
fmt.Println(res)
}
Результат выполнения кода:
"/home/user/go"
Пример
Давайте получим значение переменной окружения, которая не установлена в системе:
package main
import (
"fmt"
"syscall"
)
func main() {
res := syscall.Getenv("NOT_EXISTS_VAR")
fmt.Println(res)
}
Результат выполнения кода:
""
Пример
Давайте проверим, существует ли переменная окружения, с помощью дополнительной проверки:
package main
import (
"fmt"
"syscall"
)
func main() {
env := "HOME"
res := syscall.Getenv(env)
if res != "" {
fmt.Println(env, "is set to:", res)
} else {
fmt.Println(env, "is not set")
}
}
Результат выполнения кода:
"HOME is set to: /home/user"
Смотрите также
-
функцию
os.Getenv,
которая является современной заменой и рекомендуется к использованию -
функцию
os.LookupEnv,
которая позволяет проверить, установлена ли переменная окружения -
функцию
os.Setenv,
которая устанавливает значение переменной окружения -
функцию
os.Unsetenv,
которая удаляет переменную окружения