偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

這些常用的 Go CLI 命令,新手 Gopher 應該掌握

開發(fā) 開發(fā)工具
Go 提供了非常多簡單又實用的命令行工具,本文僅介紹了一些在項目開發(fā)中最可能被用到的命令。想獲取更多 Go 命令?

本文將介紹一些最基本的 Go 命令行命令。如果你剛接觸 Go 語言,那你有必要記住它們,因為這些命令是 Go 開發(fā)者日常工作中所必備的。

Go version

開始 Go 項目前,我們應該確保開發(fā)機上已經安裝好了 Go 編譯器。

通過執(zhí)行以下命令可以查看安裝的 Go 版本信息。

$ go version
go version go1.18 darwin/amd64

Go env

如果我們可能想查看一些 Go 相關的環(huán)境變量,例如 GOROOT 或者 GOPATH。你可以執(zhí)行這個命令。

$ go env

當你想對某個環(huán)境變量進行更改,例如修改 Go 代理,你可以這樣做。

$ go env -w GOPROXY=https://goproxy.io,direct

go mod

在你開始建立第一個 Go 程序時,在項目根目錄下,你應該運行這樣的命令。

$ go mod init <your project name>

例如

$ go mod init demo/firstProject

此時,項目根目錄將增加 go.mod 文件,它的內容如下

$ cat go.mod 
module demo/firstProject

go 1.18

如果你有其他語言的經驗,那么 go.mod 類似于 Python 中的 requirements.txt,Java 中的 pom.xml,它用于管理項目的依賴包。

go get

當項目中有引入外部庫,應該執(zhí)行 go get 命令。

$ go get <package name>

例如我們需要使用日志庫 logrus,執(zhí)行以下命令會將該庫源代碼下載至 mod cache 中,并將在 go.mod  文件中記錄該庫的依賴情況。

$ go get github.com/sirupsen/logrus
$ cat go.mod
module demo/firstProject

go 1.18

require (
github.com/sirupsen/logrus v1.9.0 // indirect
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8 // indirect
)

go run/build

當我們已經編寫了一些 Go 代碼,并希望在本地運行它以查看程序表現(xiàn)是否符合預期。

$ go run .

當然,我們也可以使用 go build 命令。

$ go build -o <name of binary> <packages>
$ ./<name of binary>

兩種命令方式都需要編譯的過程,實質并無什么區(qū)別。go run只是將編譯得到的可執(zhí)行文件執(zhí)行后銷毀,而 go build 是將可執(zhí)行文件保留下來,并不直接執(zhí)行。

go test

如果你編寫了一堆單元測試代碼(在以_test.go 結尾的文件中),你想運行它們,只需要執(zhí)行以下語句。

$ go test

go mod tidy

當項目中嘗試引入過多個三方包,而其中部分包我們并不需要了,那就應該從代碼依賴中刪除。

$ go mod tidy

go vet

當完成了功能開發(fā)后,應該使用以下命令來幫助我們檢測程序中可能存在問題的代碼。更多 vet 知識可以查看文章Go工具之vet——靜態(tài)診斷器。

$ go vet

go fmt

當完成了功能開發(fā),準備提交代碼到公共倉庫。我們應該確保項目代碼遵循統(tǒng)一的官方代碼風格。

$ go fmt

當然更好的方式其實是使用檢查套件,具體可以參見文章Gopher一定要會的代碼自動化檢查。

總結

Go 提供了非常多簡單又實用的命令行工具,本文僅介紹了一些在項目開發(fā)中最可能被用到的命令。

想獲取更多 Go 命令?可以執(zhí)行 $ go 或者 $ go tool 獲取命令列表,執(zhí)行 go help <command>可了解特定命令的更多信息。

責任編輯:武曉燕 來源: Golang技術分享
相關推薦

2010-07-02 09:17:29

技能運維人員

2011-02-16 09:26:49

2019-12-24 16:52:22

Go語言騰訊TM函數(shù)

2023-11-10 11:06:36

Linux命令

2023-09-11 10:06:11

Linux命令

2021-04-27 15:28:32

程序員技能開發(fā)者

2018-05-03 08:45:58

Linux命令

2020-11-20 06:50:19

Linux命令運維

2022-04-19 09:38:20

Kubernetes云原生容器

2020-01-27 16:28:57

開發(fā)命令遠程服務器

2023-04-07 16:11:56

前端開發(fā)

2022-08-23 12:21:50

Linux命令

2010-02-04 16:56:24

2009-11-26 13:57:24

Cisco路由器命令

2023-08-31 07:33:41

GopherCarolexcel

2016-06-22 09:30:58

Linux命令新手

2020-02-11 12:17:53

開發(fā)命令

2023-10-06 22:43:53

cronLinux系統(tǒng)

2025-07-03 07:59:22

tcpdump網絡抓包網絡

2010-08-02 16:20:31

ICMP協(xié)議
點贊
收藏

51CTO技術棧公眾號