常用
go
go help build
bug
# 直接打开默认浏览器,显示go的github页面进行bug报告,并会自动添加系统的信息。
go bug
build
# 编译指定的源码文件或代码包及依赖包
go build
go build -o main.exe
# 当前有 main.go
go build main2.go
# 底层
go build -n main.go
install
# 多一步安装编译后的文件到指定目录
go install main.go
get
# 动态获取远程代码包及其依赖包,并进行编译和安装
go get github.com/PuerkitoBio/goquery
mod
go modules的简写,用于对go包的管理
GO111MODULE=on
go mod init my
run
用于编译并运行源码文件
go run zarten.go
clean
删除执行其他命令时产生的文件或目录
go clean -i -n
fmt
# 检查并格式化成go语言的规范格式
gofmt -l my
gofmt zarten.go
gofmt -w zarten.go
list
# 列出当前安装包
go list
version
# 查看当前go的版本
go version
env
# 查看当前go的环境变量
go env
交叉编译各大平台命令
有时我们需要在某一平台编译出其他平台的可执行文件,go语言也提供了相关的命令或配置
在Mac平台编译:
- Linux
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
- Windows
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go
在Linux平台编译:
- Mac
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build main.go
- Windows
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go
在Windows平台编译:
- Mac
SET CGO_ENABLED=0 SET GOOS=darwin SET GOARCH=amd64 go build main.go
或写成批处理
SET CGO_ENABLED=0
SET GOOS=darwin
SET GOARCH=amd64
go build main.go
- Linux
SET CGO_ENABLED=0 SET GOOS=linux SET GOARCH=amd64 go build main.go
或写成批处理
SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=amd64
go build main.go
在Goland中的设置交叉编译
例如编译在linux下的程序设置:
GOARCH=amd64;GOOS=linux