go build

  • 对于main包会生成可执行文件(指定路径: go build -o 路径/a.exe)
  • 对普通包不会生成文件
  • go build会忽略目录下以“_”或“.”开头的go文件。
  • go build的时候会选择性地编译以系统名结尾的文件(Linux、Darwin、Windows、Freebsd)。例如Linux系统下面编译只会选择array_linux.go文件,其它系统命名后缀文件全部忽略。

    go clean

  • 移除当前源码包和关联源码包里面编译生成的文件(Makefile遗留文件,go build产生)

  • 参数介绍

-i 清除关联的安装的包和可运行文件,也就是通过go install安装的文件

  • -n 把需要执行的清除命令打印出来,但是不执行,这样就可以很容易的知道底层是如何运行的
  • -r 循环的清除在import中引入的包
  • -x 打印出来执行的详细命令,其实就是打印的执行版本

    go get

    第一步是下载源码包,第二步是执行go install

参数介绍:

  • -d 只下载不安装
  • -f 只有在你包含了-u参数的时候才有效,不让-u去验证import中的每一个都已经获取了,这对于本地fork的包特别有用
  • -fix 在获取源码之后先运行fix,然后再去做其他的事情
  • -t 同时也下载需要为运行测试所需要的包
  • -u 强制使用网络去更新包和它的依赖包
  • -v 显示执行的命令

    go install

    第一步是生成结果文件(可执行文件或者.a包),第二步会把编译好的结果移到$GOPATH/pkg或者$GOPATH/bin。

    go test

    自动读取源码目录下面名为*_test.go的文件,生成并运行测试用的可执行文件。

    go version

    查看go当前的版本

    go env

    查看当前go的环境变量

    go list

    列出当前全部安装的package go run 编译并运行Go程序