自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

這些常用的 Go CLI 命令,新手 Gopher 應(yīng)該掌握

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

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

Go version

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

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

$ go version
go version go1.18 darwin/amd64

Go env

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

$ go env

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

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

go mod

在你開始建立第一個 Go 程序時(shí),在項(xiàng)目根目錄下,你應(yīng)該運(yùn)行這樣的命令。

$ go mod init <your project name>

例如

$ go mod init demo/firstProject

此時(shí),項(xiàng)目根目錄將增加 go.mod 文件,它的內(nèi)容如下

$ cat go.mod 
module demo/firstProject

go 1.18

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

go get

當(dāng)項(xiàng)目中有引入外部庫,應(yīng)該執(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

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

$ go run .

當(dāng)然,我們也可以使用 go build 命令。

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

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

go test

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

$ go test

go mod tidy

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

$ go mod tidy

go vet

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

$ go vet

go fmt

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

$ go fmt

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

總結(jié)

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

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

責(zé)任編輯:武曉燕 來源: Golang技術(shù)分享
相關(guān)推薦

2010-07-02 09:17:29

技能運(yùn)維人員

2019-12-24 16:52:22

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

2023-09-11 10:06:11

Linux命令

2023-11-10 11:06:36

Linux命令

2011-02-16 09:26:49

2021-04-27 15:28:32

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

2018-05-03 08:45:58

Linux命令

2020-11-20 06:50:19

Linux命令運(yùn)維

2020-01-27 16:28:57

開發(fā)命令遠(yuǎn)程服務(wù)器

2023-04-07 16:11:56

前端開發(fā)

2022-04-19 09:38:20

Kubernetes云原生容器

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ā)命令

2022-01-26 00:00:00

GoGopher語言

2023-10-06 22:43:53

cronLinux系統(tǒng)

2024-04-10 09:02:44

PythonBytearray數(shù)據(jù)類型
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號