如何配置Go以便它可以访问OSX中的环境变量

时间:2012-08-05 23:05:31

标签: macos go environment-variables fish

我正在开发OSX 10.7.4。

我在使用“go get”命令时遇到了一些问题。在试图找出问题所在的过程中,我意识到Go在读取$ PATH环境变量时遇到了麻烦。

以下脚本显示问题: -

(PATH作为空字符串返回,syscall.Getenv返回ok = false)

package main


import (
    "os"
    "syscall"
    "fmt"
)

func main() {

    path := os.Getenv("PATH")
    fmt.Println(path)

    syscall_path, ok := syscall.Getenv("PATH")
    fmt.Println(syscall_path)
    fmt.Println(ok)

}

我无法想象这是一个错误,因为它太过戏剧性而不被人注意。所以我的问题是:我现在以什么方式愚蠢?

: - )

即。要启用Go访问环境变量,我需要做什么?

- 更新:

事实证明,它实际上是我的shell的问题 - Homebrew也停止了工作,并显示错误消息:

/usr/local/Library/Homebrew/global.rb:95: private method `split' called for nil:NilClass (NoMethodError)
    from /usr/local/bin/brew:10:in `require'
    from /usr/local/bin/brew:10

我认为问题源于我使用鱼壳,这似乎并没有像我预期的那样建立环境。

1 个答案:

答案 0 :(得分:0)

事实证明,这是一个错误的〜/ .config / fish / config.fish文件,应该受到责备。

我正在使用:

set -g VARNAME value

应该是:

set VARNAME value