Golang入门: 用一句话说明Go语言的命令

栏目: Go · 发布时间: 5年前

内容简介:Go命令是管理Go资源的工具安装好Go环境后会内置很多有用的命令工具。初步的了解一下这些命令的用途,

Go命令是管理 Go 资源的工具

安装好Go环境后会内置很多有用的命令工具。

初步的了解一下这些命令的用途, 对写代码很有帮助

有一些命令是非常常用的,比如 run、build、get、test、get ,有一些命令在使用IDE后很少会用到,IDE代劳了,比如 fmt、vet

下面是常用命令的清单和简单的一句话说明,看看有没有你还没用过的命令吧!

常规用法:

go <命令> [参数]`

命令:

bug:创建一个bug报告

执行完命令后,会用浏览器访问github.com/golang/go 的issue。自动填写一些内容,引导你如何提交一个bug报告

build:编译包以及其依赖

最常用的命令之一。默认情况下,会在命令所在目录生成一个当前操作系统对应的可执行文件。安装完整版的Go环境,可以交叉编译其他操作系统的二进制可执行文件

clean:清空对象文件和缓存文件

前面提到的build命令和下面的test命令会生成一些文件和目录,clean会清理掉这些文件,包括build命令生成可执行文件

doc:打印包中的文档和标记符

打印出包或指定文件的说明文档,加上-all 参数,可以看到包里的所有函数列表和文档。

创建一个go文件,写入一下代码

/*

这是一个范例

*/
package main

import "fmt"

//main 主函数
func main() {
        SayHi()
}

//SayHi 打印字符串Hello world
func SayHi() {
        fmt.Println("Hello world!!")
}

执行命令 go doc -all -u

Golang入门: 用一句话说明Go语言的命令

env:打印出你现在的Go环境信息

查看各个go的开发环境参数,忘记GOPATH和GOROOT路径就可以用这个打印出来了

Golang入门: 用一句话说明Go语言的命令

fix:用go的新版本的API更新

go fix [packages]

如果你升级了go,担心以前的代码不兼容,那么就可以用 go fix

fmt:格式化代码文件

go的代码格式标准是唯一的,用 go fmt 可以格式化代码文件,很多IDE就是调用这个命令来在保存文件时调整格式。

generate:根据指令生成go文件

查找当前包相关的源代码文件,找出所有包含”//go:generate”的注释,提取并执行该特殊注释后面的命令,类似 shell 执行命令。

Golang入门: 用一句话说明Go语言的命令

get:下载和安装go包以及其依赖包的命令

go get <包的路径>

install:编译和安装包及其依赖包

可执行文件会被安装在$GOPATH/bin目录下。

list:列出目录下的所有包和模块,每行一个。

mod:详细内容可以参考文章: 拜拜了,GOPATH君!新版本Golang的包管理入门教程

run: 运行go项目

非常常用。

它会编译包,然后直接运行起来,不会在当前目录生成二进制文件。

test:运行调试

用于运行_text.go文件中的Test开头并且参数为 *testing.T的函数

Golang入门: 用一句话说明Go语言的命令

tool:运行指定的go工具

version:查看当前go版本

vet:查看包中可能出现的错误

例如,给整型%d占位符提供一个字符串参数,就会检查出类型错误,但是这个代码编译是不会报错的。

Golang入门: 用一句话说明Go语言的命令

总结

这些命令大部分使用起来都很简单,想了解更多可以运行 go help [命令名] 查看详细说明。

也有一些命令使用起来是需要花点时间学习的,比如 generate、test、mod ,如果有想要了解更多关于Go语言开发的同学,可以在评论区或私信告诉我们,一起学习一起讨论。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

代码

代码

劳伦斯・莱斯格 / 李旭 / 中信出版社 / 2004-10-1 / 30.00元

劳伦斯·莱斯格的著作《代码》 问世便震动了学界和业界,被人称为“也许是迄今为止互联网领域最重要的书籍”,也被一些学者称为“网络空间法律的圣经”。 《代码》挑战了早期人们对互联网的认识,即技术已经创造了一个自由的环境,因而网络空间无法被规制——也就是说,网络的特性使它押脱了政府的控制。莱斯格提出,事实恰恰相反。 代码的存在证明,网络并不是本制拷贝 ,不可规制的,它并没有什......一起来看看 《代码》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

MD5 加密
MD5 加密

MD5 加密工具

SHA 加密
SHA 加密

SHA 加密工具