标题是问题 - 这里是一个简短的解释,说明我如何到达这里,因为我想这可能有助于调查。
我安装了去,一切都很好。我在Ubuntu上运行了build essential golang
命令,我的go版本突然与我的/usr/local/go/src/VERSION
文件不同步。
我在/usr/local/go/
删除了我的go文件,以及/usr/bin/
中的go和go-1.8文件夹。然后我重新安装了/usr/local/go
现在,当我以用户身份运行go env
时,输出看起来是正确的。但是(标题),当我sudo
时,没有识别出任何命令,我收到以下消息:程序' go'可以在以下包中找到:
* golang-go
* gccgo-go
作为用户,我的一些go env输出是:
GOPATH="/home/{me}/go"
GOROOT="/usr/local/go"
作为用户,我的echo $PATH
是:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/go/bin:/home/{me}/go/bin
我的~/.profile
包括:
export GOPATH=$HOME/go
export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin
请帮忙吗? :)
答案 0 :(得分:1)
您应该在其他社区提问,例如:unix & linux
但问题是,当您以root用户身份登录时,PATH变量将设置为root用户配置。您必须配置root用户的PATH环境变量,或运行su / sudo,如下所示:
su --preserve-environment -
sudo --preserve-env bash