Linux中Go環(huán)境配置和GoModule常用操作
我為什么要學(xué)習(xí)go語言
當(dāng)今已經(jīng)是移動和云計算時代,Go出現(xiàn)在了工業(yè)向云計算轉(zhuǎn)型的時刻,簡單、高效、內(nèi) 置并發(fā)原語和現(xiàn)代的標(biāo)準(zhǔn)庫讓Go語言尤其適合云端軟件開發(fā)(畢竟它就是為此而設(shè)計的)。到2014年,Go項目擁有了上百的核心貢獻(xiàn)者,其生態(tài)圈中擁有了數(shù)不盡的第三方庫和工具(https://godoc.org/),更有很多大公司開始或遷移到go語言,一些重量級的開源云項目,諸如Docker和Kubernetes 都是用Go語言實(shí)現(xiàn)的,一些運(yùn)作基礎(chǔ)設(shè)置的公司,諸如Google、CloudFlare、Canonical、Digital Ocean、Github、Heroku以及微軟也都在使用Go語言開發(fā)一些重量級的項目。再來看看如下公司開源的go庫
(1)Facebook開源其go庫 https://github.com/facebookgo
(2)Dropbox開源了其基于Go語言的工具庫godropbox,并表示在一年前已經(jīng)決定將Dropbox中對性能要求比較高的后端程序從Python遷移到Go語言。Dropbox的幾乎所有的代碼都是用Python編寫的, Python語言被廣泛使用在服務(wù)器端、桌面的客戶端、網(wǎng)站控制邏輯以及后端的 API 和分析上。Dropbox親睞Python簡單易學(xué)、開發(fā)效率高等特點(diǎn),但是現(xiàn)在為了支撐日益增長的用戶數(shù)量,Dropbox不得不將部分對性能要求比較高的業(yè)務(wù)替換為有更好的并發(fā)支持和更快的運(yùn)行速度的Go語言。
Go 目前已經(jīng)發(fā)展到1.4版本,除了其新增的特性和bug修正外,它為實(shí)現(xiàn)一個新的低延遲垃圾收集器以及支持在移動終端上運(yùn)行Go奠定了基礎(chǔ)。作為程序員我們必須在掌握精通一門語言的同時需要擴(kuò)大視野,學(xué)習(xí)另外一種語言的設(shè)計思想和精髓,而我認(rèn)為go再合適不過了!2015年將是Go語言大爆發(fā)的一年。
Go環(huán)境配置和GoModule
Linux相關(guān)
Linux常用操作
mkdir directory ——創(chuàng)建文件夾 vi file ——創(chuàng)建文件,再關(guān)閉vim rm file ——刪除文件 rm -rf directory ——遞歸刪除文件夾,r代表遞歸,f帶包強(qiáng)制 mv A B ——移動文件夾,可以用來改名 mv -rf ——同上 cp fromPath toPath ——拷貝,同樣可以加-rf rename ——重命名,需要安裝包 ls/ll/tree ——列出文件夾 cat ——打印文件內(nèi)容 cd path ——進(jìn)入路徑 sudo apt install package ——Ubuntu安裝
vim常用操作
:w ——寫入 :q ——退出 :wq ——保存退出 home/end ——行首行位 G/gg ——文末,開頭 pageup/pagedown ——翻頁 backspace/delete ——前刪,后刪 dd/yy ——刪除復(fù)制一樣 ndd/nyy ——n換成數(shù)字,多行 p/P ——光標(biāo)向下粘貼,光標(biāo)向上粘貼 u/ctrl+u/ctrl+r ——撤銷 :/word ——光標(biāo)向下搜索 :?word ——光標(biāo)向上搜索 :1,$s/word1/word2/g ——替換,1可省略 :1,$s/word1/word2/gc ——需要確認(rèn)的替換 i ——進(jìn)入輸入模式 ESC ——退出輸入模式 ctrl+q ——卡死強(qiáng)退輸入模式 insert ——切換插入或替換輸入
golang環(huán)境配置
1.官網(wǎng)下載go包體-拖進(jìn)linux
2.解壓
sudo tar -C /usr/local -zxvf go1.11.5.linux-amd64.tar.gz
3.配置環(huán)境變量
vim ~/.bashrc
添加:
#源碼包 export GOROOT=/usr/local/go #用戶工作路徑 export GOPATH=$HOME/gopath #系統(tǒng)環(huán)境變量 export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
source ~/.bashrc
go verison——是否成功輸出go版本;
goModule
任意位置創(chuàng)建項目文件夾;
打開終端輸入:go mod init + 包名
文件夾下會生成go.mod 和 go.sum兩個文件夾

)
go.mod記錄了go的版本和依賴包的版本;
go.sum是對依賴包整體去了hash記錄,同時也多go.mod取哈希記錄;
保證多人合作時引用的包體版本一致;
根據(jù)go.mod中依賴,通過go get下載同版本依賴包即可;
Life is too short for so much sorrow.
到此這篇關(guān)于Linux中Go環(huán)境配置和GoModule的文章就介紹到這了,更多相關(guān)Go環(huán)境配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
golang使用redis實(shí)現(xiàn)全文搜索功能詳解
這篇文章主要為大家詳細(xì)介紹了golang如何使用redis實(shí)現(xiàn)全文搜索功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-02-02
golang gin 框架 異步同步 goroutine 并發(fā)操作
這篇文章主要介紹了golang gin 框架 異步同步 goroutine 并發(fā)操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12
基于Go+WebSocket實(shí)現(xiàn)實(shí)時通信功能
在互聯(lián)網(wǎng)應(yīng)用程序中,實(shí)時通信是一種非常重要的功能,WebSocket 是一種基于 TCP 的協(xié)議,它允許客戶端和服務(wù)器之間進(jìn)行雙向通信,本文將介紹如何使用 Golang 創(chuàng)建單獨(dú)的 WebSocket 會話,以實(shí)現(xiàn)實(shí)時通信功能,需要的朋友可以參考下2023-10-10
golang elasticsearch Client的使用詳解
這篇文章主要介紹了golang elasticsearch Client的使用詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-05-05
Golang實(shí)現(xiàn)拓?fù)渑判?DFS算法版)
這篇文章主要介紹了Golang實(shí)現(xiàn)拓?fù)渑判?DFS算法版),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
Go語言defer與return執(zhí)行的先后順序詳解
這篇文章主要為大家介紹了Go語言defer與return執(zhí)行的先后順序詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12

