簡體   English   中英

如何在不使用 Golang 代碼的情況下設置 Go 環境變量

[英]How to set Go Environment variables without using Golang code

嗨,我希望在不使用 Golang 代碼的情況下設置一些 Go 環境變量。

當我使用打印當前設置的變量時

fmt.Println(os.Environ())

我得到了我機器上當前設置的所有 Go 變量的列表

如何向此列表添加新變量,例如“TEST”,我正在運行 Mac OS Big Sur

我試圖編輯我的 .zshrc 並添加變量,但是當我執行 os.getEnv("TEST") 時它不會檢測到它

從文檔中, os.Environ函數打印設置的環境變量的字符串數組:

Environ 以“key=value”的形式返回表示環境的字符串副本。

函數os.Getenv ,根據其文檔:

Getenv 檢索由鍵命名的環境變量的值。 它返回值,如果變量不存在,該值將為空。 要區分空值和未設置值,請使用 LookupEnv。

這可能解釋了您在評論中提到的不同之處。 此外,環境變量區分大小寫 所以TEST不等於Test

為了回答您的問題並提供一個最小的工作示例,這里有一些測試代碼:

package main

import (
    "os"
    "fmt"
)

func main () {
    fmt.Println("os.Getenv(\"Test\"): ", os.Getenv("Test"))
}

在之前設置環境變量並像這樣運行這個程序會產生輸出:

# export environment variable
export Test=val

# run the program, output on next line
go run main.go
os.Getenv("Test"):  val

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM