centos7.4 记一次 go安装的问题,及目录命令熟悉
学go 安装第一步,go不需要安装Nginx,也可以跑服务,虽然现在php也可以,但PHP环境一般默认了wamp lamp lnmp
centos7.4 安装步骤简述
wget https://dl.google.com/go/go1.15.10.linux-amd64.tar.gz #拉取安装包
tar -C /usr/local -zxvf go1.15.10.linux-amd64.tar.gz #解压文件
mv go/ /usr/local/ #文件移动
vim /etc/profile #环境变量配置
source /etc/profile #生效
go env -w GO111MODULE=on #打开 Go modules 开关 go1.13默认auto
go env -w GOPROXY="https://goproxy.cn,direct" #配置代理地址
go version #版本信息 正常显示 一般是安装成功
现在可以安装1.8了,BTA版也加入了泛型,我经历上述步骤后,go version
命令也会正确显示我的版本号go1.15.10,表名我已经安装成功了
问题
我遇到的问题是,如上述安装成功后,每当我下次重新登录服务器,我的go 命令就失效了?
查阅资料后 发现还需要编辑下,并且下次登录服务器也可以使用go 命令了
vi ~/.bashrc
alias go='/usr/local/go/bin/go' #添加这段代码
source ~/.bashrc #生效(配置后每次登录服务器都会重新读取这个文件)
目录熟悉
$GOPATH 是go的工程目录
- $GOPATH/bin go 命令目录文件
- $GOPATH/pkg/mode 存放的是包文件,按远程地址区分(包文件并不像php 一样在项目里)
如github.com 一个目录 - $GOPATH/pkg/sum 文件校验和目录
$GOROOT 是go的安装目录
- api:用于存放依照
Go
版本顺序的 API 增量列表文件。这里所说的 API 包含公开的变量、常量、函数等。这些 API 增量列表文件用于Go
语言 API 检查 - bin:用于存放主要的标准命令文件(可执行文件),包含
go
、godoc
、gofmt
- blog:用于存放官方博客中的所有文章
- doc:用于存放标准库的 HTML 格式的程序文档。我们可以通过
godoc
命令启动一个 Web 程序展示这些文档 - lib:用于存放一些特殊的库文件
- misc:用于存放一些辅助类的说明和工具
- pkg:用于存放安装
Go
标准库后的所有归档文件(以.a
结尾的文件)。注意,你会发现其中有名称为linux_amd64
的文件夹,我们称为平台相关目录。这类文件夹的名称由对应的操作系统和计算架构的名称组合而成。通过go install
命令,Go
程序会被编译成平台相关的归档文件存放到其中 - src:用于存放
Go
自身、Go
标准工具以及标准库的所有源码文件 - test:存放用来测试和验证
Go
本身的所有相关文件
常用命令
go help <command> //显示指定命令信息
go version //版本信息
go ev //go安装配置信息
go run //运行代码
go build //编译代码
go install //安装项目
go get -u 包名 //获取安装 go 包
go mod download //下载 go.mod 文件中指明的所有依赖
go mod tidy //整理现有的依赖
go mod graph //查看现有的依赖结构
go mod init //生成 go.mod 文件
go mod edit //编辑 go.mod 文件
go mod verify //校验一个模块是否被篡改过
感慨:
go 是一门较简单的语言,但要熟悉真要花些心思呀!前段时间一直在焦虑,急躁,内耗,一直看文档,基础、并发协程,微服务,晕头转向,看了也不会! 还是要多实践多总结呀!不要害怕自己写的博客差,写起来,一点点积累,总能水滴石穿的!
本作品采用《CC 协议》,转载必须注明作者和本文链接
这就是环境变量 跟 windows 一样
厉害,很详细。过几天我写一个一键安装的sh脚本,就不用做这么多的配置了。配置环境一直都很浪费时间。