go command 命令

  1. 1   go 二级子命令
  2. 2   go tool 三级子命令

/usr/local/go/bin 下提供了三个命令 go、gofmt、godoc。主命令 Go 下分二级和三级子命令,本文档将迭代完善,争取列出所有功能点,目前还处于更新状态。

1   go 二级子命令

  • go fmt 简单封装了gofmt,后者更多设置
  • go doc 是简单版的 godoc,后者可以做项目文档服务器
  • go get 获取网上包
  • go run 只能运行 Go 文件
  • go build 可以编译包或 Go 文件,对 Goland 来说表示编译加运行
  • go test 单元测试和性能测试
  • go install 安装到 $GOPATH/bin 目录下,无法指定到其它目录
  • go tool 放在第二部分讲解

常见的参数

  • n print the command that would be executed but not execute it

2   go tool 三级子命令

go tool [-n] <command> 下又有很多命令,代码基本都在 /src/cmd 下,不加参数表示直接打印可以看到三级子命令:

  • addr2line
  • asm
  • buildid
  • cgo
  • compile 这里会直接编译成 .o 文件,一般用 -S 打印出汇编文本
  • cover
  • dist
  • doc
  • fix
  • link 进行链接
  • nm
  • objdump 反汇编
  • pack
  • pprof 性能监控
  • test2json
  • tour
  • trace 和 -trace 一样的功能,进行竞争条件追踪,如果有竞争条件默认会输出到 stderr。
  • vet




参考文献
[1] Command go https://golang.org/cmd/go/