以下命令基于 go 版本 1.15.3 进行测试
根本命令
go help
go env
go version
穿插编译
# Windows 下编译 Linux
SET CGO_ENABLED=0
SET GOARCH=amd64
SET GOOS=linux
go build xx.go
编译参数
go build
- 当编译包时,会主动疏忽 ’_test.go’ 的测试文件。
# go build -o 指定编译输入的名称
# win 下编译生成指定名称的可执行文件
go build -o custom.exe send.go
gofmt 和 go fmt
go fmt 是 gofmt 的繁难封装
go fmt 即 gofmt -l -w
传入文件的话,会格式化这个文件。传入目录的话,会格式化该目录下的所有.go 文件
// 罕用 go fmt
go fmt send.go
// gofmt 参数
usage: gofmt [flags] [path ...]
-cpuprofile string
write cpu profile to this file
-d display diffs instead of rewriting files
-e report all errors (not just the first 10 on different lines)
-l list files whose formatting differs from gofmt's
-r string
rewrite rule (e.g., 'a[b:len(a)] -> a[b:]')
-s simplify code
-w write result to (source) file instead of stdout
// go fmt 参数
usage: go fmt [-n] [-x] [packages]
Fmt runs the command 'gofmt -l -w' on the packages named
by the import paths. It prints the names of the files that are modified.
For more about gofmt, see 'go doc cmd/gofmt'.
For more about specifying packages, see 'go help packages'.
The -n flag prints commands that would be executed.
The -x flag prints commands as they are executed.
To run gofmt with specific options, run gofmt itself.
See also: go fix, go vet.