V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
silencil
V2EX  ›  macOS

第一次用 Mac,请教下环境变量问题

  •  
  •   silencil · 2021-10-27 17:36:51 +08:00 · 1366 次点击
    这是一个创建于 1124 天前的主题,其中的信息可能已经有所发展或是发生改变。

    背景:正在学习 go ,出现了个报错,stackoverflow 上看到说不需要再设置 goroot 了,于是打算取消这个环境变量,尝试多次失败。 这个环境变量我只在~/.zshenv 下设置了,删除后 source 后,输入 go env 依然可见 goroot 环境变量,go env -w 手动重置显示与系统环境变量冲突。 terminal 使用的是 iterm2+oh my zsh ,自用这电脑以来只修改过~/.zshrc 、~/.zshenv 两个环境变量,~/.zshrc 已恢复初始设置,依然不见这个问题解决。

    第 1 条附言  ·  2021-10-28 13:29:38 +08:00
    感谢各位回复,稍微明白了点,goroot 应该不是什么问题
    4 条回复    2021-10-28 08:46:57 +08:00
    YsHaNg
        1
    YsHaNg  
       2021-10-27 20:46:55 +08:00   ❤️ 1
    zsh 有 5 个 profile zshenv zprofile zshrc zlogin 有时候还会读 bashrc /etc/profile 都排查一下 链接 zsh.sourceforge.io/Doc/Release/Files.html
    GuuJiang
        2
    GuuJiang  
       2021-10-27 22:06:51 +08:00 via iPhone   ❤️ 1
    你没有明白 source 的原理,source 仅仅是简单地把目标文件执行一遍而已,从被 source 的文件里删除只是再次 source 时没有了相应的指令,但是原来已经存在的环境变量仍然存在,想要移除有两个方法
    1. 新开一个 shell
    2. 执行 unset GOROOT
    Nitroethane
        3
    Nitroethane  
       2021-10-27 22:44:56 +08:00   ❤️ 1
    不用管 GOROOT 啊,我执行 `go env`,GOROOT 的值是 `/usr/local/Cellar/go/1.16.3/libexec`,也没什么影响。`echo $GOROOT` 输出空值。
    Hack3rHan
        4
    Hack3rHan  
       2021-10-28 08:46:57 +08:00 via iPhone   ❤️ 1
    删除后 source 不行啊,你 zshrc 里又没写 unset ,其实你删了之后重新开个 Terminal 就好了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2731 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 11:14 · PVG 19:14 · LAX 03:14 · JFK 06:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.