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

邹渊
• 阅读 4092

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语言开发的同学,可以在评论区或私信告诉我们,一起学习一起讨论。

点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
6个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Stella981 Stella981
3年前
Golang代码测试:一点到面用测试驱动开发
摘要:TDD(TestDrivenDevelopment),测试驱动开发。期望局部最优到全局最优,这个是一种非常不错的好习惯。了解Golang的测试之前,我们先了解一下go语言自带的测试工具。gotest工具Go语言中的测试依赖gotest命令。编写测试代码和编写普通的Go代码过程是类似的,并不需要学习新的
Wesley13 Wesley13
3年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Stella981 Stella981
3年前
GO标准库flag
Go语言内置的flag包实现了命令行参数的解析。os.Argsos.Args是一个\\string类型。获取命令参数示例:funcmain(){iflen(os.Args)0{forindex,args:rangeos.Args{
Stella981 Stella981
3年前
Golang- import 导入包的语法
一包的导入语法   在写Go代码的时候经常用到import这个命令用来导入包文件,看到的方式参考如下:   import(     "fmt"   )  然后在代码里面可以通过如下的方式调用   fmt.Println("helloworld")    上面这个fmt是Go语言的
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
GoLang 命令
\TOC\查看可用命令直接在终端中输入gohelp即可显示所有的go命令以及相应命令功能简介,主要有下面这些:build:编译包和依赖clean:移除对象文件doc:显示包或者符号的文档env:打印go的环境信息bug:启动错误报告fix:运行go
Wesley13 Wesley13
3年前
Java日期时间API系列36
  十二时辰,古代劳动人民把一昼夜划分成十二个时段,每一个时段叫一个时辰。二十四小时和十二时辰对照表:时辰时间24时制子时深夜11:00凌晨01:0023:0001:00丑时上午01:00上午03:0001:0003:00寅时上午03:00上午0