Go命令行工具详解 -《Go语言实战指南》

360影视 日韩动漫 2025-05-06 07:51 2

摘要:Go语言自带的命令行工具非常强大,是开发者日常工作中不可或缺的助手。本章将详细介绍常用的Go命令行工具及其使用场景,帮助你更高效地开发、构建、测试和管理Go项目。

Go语言自带的命令行工具非常强大,是开发者日常工作中不可或缺的助手。本章将详细介绍常用的Go命令行工具及其使用场景,帮助你更高效地开发、构建、测试和管理Go项目。

一、go version

查看当前安装的Go版本:

go version

输出示例:

go version go1.21.5 linux/amd64

二、go env

查看当前Go的环境变量设置:

goenv

输出示例(部分):

GOOS="linux"GOARCH="amd64"GOPATH="/home/user/go"GOROOT="/usr/local/go"

你也可以查看单个变量,如:

goenvGOPATH

三、go run

编译并立即运行Go程序,适合快速测试:

go run main.go

也可运行多个文件:

go run main.go utils.go

四、go build

将Go源文件编译为可执行文件(不运行):

go build main.go

编译整个模块:

go build

构建后在当前目录生成可执行文件(Windows为 .exe,其他系统为无扩展名的可执行文件)。

五、go install

编译并安装Go程序或包:

go install

生成的可执行文件会被放到 $GOPATH/bin 或模块模式下的 GOBIN 路径中。

六、go fmt

对Go源代码进行格式化,符合Go的官方风格:

gofmtmain.go

通常配合 IDE 自动完成,也可以一次格式化整个项目:

gofmt./...

七、go mod

Go Modules 是Go 1.11之后引入的官方包管理系统。

• 初始化模块(项目):

go mod init myproject

• 下载依赖:

go mod tidy

• 查看模块依赖图:

go mod graph

• 显示依赖树:

go list -m all

八、go get(Go 1.16及之前)

在老版本中用于获取远程包:

go get github.com/gin-gonic/gin

在Go 1.17及之后,go get 只用于添加工具依赖,添加库依赖建议使用:

go install

或使用 go mod tidy 来解析 import 自动下载。

九、go test

运行测试代码(文件名以 _test.go 结尾):

gotest

带上详细输出:

gotest-v

运行指定测试文件:

gotestmypackage/myfile_test.go

十、go clean

清理编译生成的缓存文件或可执行文件:

go clean

可配合参数使用:

go clean -modcache# 清理模块缓存

十一、go doc

查看包或函数的文档说明(本地):

go docfmtgo doc fmt.Println

十二、go list

列出包信息和依赖信息:

go listgo list -m all# 列出所有依赖模块

十三、go tool

查看所有可用的底层Go工具:

go tool

可以用于深入分析性能、汇编等内容(如 go tool pprof、go tool compile 等)。

命令功能说明go run编译并运行程序go build编译生成可执行文件go install编译并安装到 $GOPATH/bingo fmt格式化源代码go test执行单元测试go mod管理模块依赖go get获取远程依赖包(旧方式)go doc查看文档go env查看Go环境变量go version查看Go版本

来源:新浪财经

相关推荐