01Go命令介绍

Go 命令介绍

go 提供了一套强大好用的命令系统golang

go build       编译包和依赖项
go clean       删除目标文件
go env         打印Go环境信息
go fix         在包上运行go tool修复,用来修复老版本到新版本的问题
go fmt         在包源上运行gofmt
go generate    经过处理源生成Go文件
go get         下载并安装包和依赖项
go install     编译和安装包和依赖项
go list        列出包
go run         编译并运行go程序
go test        测试包,运行以 _test.go结尾的文件
go tool        运行指定的go工具
go version     打印go版本
go vet         在包上运行工具go vet,它能够在编译阶段和运行阶段发现bug

详细的官网地址为:中文https://go-zh.org/cmd/go/ 英文:https://golang.org/doc/cmd工具

介绍几个经常使用的:开发工具

一、go build

go build [-o output][-i] [build flags][packages]测试

这个命令主要用于测试编译。在包的编译过程当中,如有必要,会同时编译与之相关联的包。ui

  • go build 会默认编译当前文件夹下的全部.go结尾的文件
  • go build 会忽略目录下以“_”或“.”开头的 go 文件 ,因此不会编译测试文件
  • build mian包的文件,会在当前目录生成一个可执行文件,其余不会。好比文件 demo.go ,咱们进行go build demo.go 若是demo.go 是main包:执行结果会在当前目录生成一个可执行文件。若是想在gopath/bin下生成可执行文件的话须要执行go install 或者 go build -o 路径/name.exe [若是多文件再加上文件名]
  • -o: 仅在编译单个包时容许,强制构建将结果可执行文件或对象写入命名输出文件,注意格式:go build -o 可执行文件名 .go文件名 ,例如 go build -o abc.exe demo.go,就会把demo.go编译并生成abc.exe,固然能够指定路径
  • 能够根据不一样的操做系统后缀来命名文件,go build 的时候会选择性地编译以系统名结尾的文件

二、go clean

这个命令是用来移除当前源码包里面编译生成的文件。这些文件包括操作系统

_obj/            旧的 object 目录,由 Makefiles 遗留
_test/             旧的 test 目录,由 Makefiles 遗留
_testmain.go     旧的 gotest 文件,由 Makefiles 遗留
test.out         旧的 test 记录,由 Makefiles 遗留
build.out         旧的 test 记录,由 Makefiles 遗留
*.[568ao]          object 文件,由 Makefiles 遗留
DIR(.exe)          由 go build 产生
DIR.test(.exe)  由 go test -c 产生
MAINFILE(.exe)  由 go build MAINFILE.go 产生

通常在提交版本控制前,删除一些编译生成的文件版本控制

三、go fmt

格式化代码。go fmt <文件名>.go 通常开发工具都自带code

使用 go fmt 命令,更多时候是用 gofmt,并且须要参数-w,不然格式化结果不会写入文件 。gofmt -w src,能够格式化整个项目对象

四、go get

动态获取远程代码包 ,这个命令在内部实际上分红了两步操做:开发

第一步是下载源码包,第二步是执行 go install。 go 工具会自动根据不一样的域名调用不一样的源码工具 ,因此要正常使用确保安装了合适的源码管理工具。

五、go install

生成可执行文件。这个命令在内部实际上分红了两步操做:

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

六、go test

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

七、go doc

执行godoc 能够查看bao、文件、以及方法的源码文档。好比:go doc net/http godoc -src fmt Printf 等等。最好用的仍是能够在本地搭建文档服务godoc -http=:端口号 而后访问localhost:端口号。若是你的pkg下有本身生成的文件,也会在文档列出来。

八、go run

很实用,编译并直接运行。好比 go run main.go

其余命令或者详细参数,用到的时候能够去查官方文档。

相关文章
相关标签/搜索