用一句話描述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複製程式碼
-
env :打印出你現在的Go環境資訊
檢視各個go的開發環境引數,忘記GOPATH和GOROOT路徑就可以用這個打印出來了
- fix :用go的新版本的API更新
go fix [packages]複製程式碼
如果你升級了go,擔心以前的程式碼不相容,那麼就可以用 go fix
- fmt :自動格式化程式碼檔案
go的程式碼格式標準是唯一的,用go fmt可以格式化程式碼檔案,很多IDE就是呼叫這個命令來在儲存檔案時調整格式。 - generate :可以執行指令,包括生成和更新go原始碼檔案的指令
查詢當前包相關的原始碼檔案,找出所有包含”//go:generate”的註釋,提取並執行該特殊註釋後面的命令,類似shell執行命令。
例子裡只是呼叫了系統的echo指令,列印字串,實際用途可以用generate生成go的類檔案。 (可能需要寫一個小例子來說明其用途,日後的文章中再具體研究吧。)
- get :下載和安裝go包以及其依賴包的命令
go get <包的路徑>複製程式碼
- install :編譯和安裝包及其依賴包
可執行檔案會被安裝在$GOPATH/bin目錄下。 - list :列出目錄下的所有包和模組,每行一個。
- mod :詳細內容可以參考文章: 拜拜了,GOPATH君!新版本Golang的包管理入門教程
- run : 執行go專案
非常常用。
它會編譯包,然後直接執行起來,不會在當前目錄生成二進位制檔案。 - test :執行除錯
用於執行_text.go檔案中的Test開頭並且引數為 *testing.T的函式
- tool :執行指定的go工具
- version :檢視當前go版本
- vet :檢視包中可能出現的錯誤
例如,給整型%d佔位符提供一個字串引數,就會檢查出型別錯誤,但是這個程式碼編譯是不會報錯的。
總結
這些命令大部分使用起來都很簡單,想了解更多可以執行go help [命令名]檢視詳細說明。
也有一些命令使用起來是需要花點時間學習的,比如 generate、test、mod ,如果有想要了解更多關於Go語言開發的同學,可以在評論區或私信告訴我們,一起學習一起討論。
“曉程式碼”公眾號: