亚州天堂爱爱,做爱视频国产全过程在线观看,成人试看30分钟免费视频,女人无遮挡裸交性做爰视频网站

? ? ?

帶你使用Golang快速構建出命令行應用程序(golang 命令行工具)

在日常開發中,大家對命令行工具(CLI)想必特別熟悉了,如果說你不知道命令工具,那你可能是個假開發。每天都會使用大量的命令行工具,例如最常用的Git、Go、Docker等。

不管是做技術開發還是業務開發,都會有開發命令行程序的場景。例如如果是開發框架,會開發一個命令行工具幫助使用者快速生成項目結構;如果是開發一個定時任務程序,會開發一個命令行工具來啟動這個任務。本文就介紹兩個專門用來開發命令行應用程序的庫。

urfave/cli

urfave/cli是一個簡單、快速、有趣的包,專門用于構建命令行應用程序。其目標是使開發人員能夠以一種富有表現力的方式編寫快速且可分發的命令行應用程序。看一個簡單的例子:

package mainimport ( "fmt" "log" "os" "github.com/urfave/cli/v2")func main() { app := &cli.App{ Name: "blog", Usage: "顯示路多辛blog歡迎語", Action: func(*cli.Context) error { fmt.Println("歡迎來到路多辛的blog,能幫助到大家是我最大的快樂!") return nil }, } if err := app.Run(os.Args); err != nil { log.Fatal(err) }}

編譯后,執行一下查看幫助命令看下效果

$ ./main -h NAME: blog - 顯示路多辛blog歡迎語USAGE: blog [global options] command [command options] [arguments...]COMMANDS: help, h Shows a list of commands or help for one commandGLOBAL OPTIONS: --help, -h show help

執行下blog命令看下效果

$ ./main blog歡迎來到路多辛的blog,能幫助到大家是我最大的快樂!

更多使用方法可以參考官方文檔 https://cli.urfave.org/。

spf13/cobra

這個庫是Go語言負責人主要參與開發的,很多知名項目的命令行工具都是使用這個庫開發的,例如Kubernetes、Istio、Docker、Etcd、GitHubCLI等等。看一個簡單的例子:

package mainimport ( "fmt" "os" "github.com/spf13/cobra")func main() { Execute()}func Execute() { var rootCmd = &cobra.Command{ Use: "blog", Short: "顯示路多辛blog歡迎語", Long: "顯示路多辛blog歡迎語,介紹blog的整體情況", Run: func(cmd *cobra.Command, args []string) { fmt.Println("歡迎來到路多辛的blog,能幫助到大家是我最大的快樂!") }, } if err := rootCmd.Execute(); err != nil { fmt.Fprintln(os.Stderr, err) os.Exit(1) }}

編譯后,執行一下查看幫助命令看下效果:

$ ./main -h 顯示路多辛blog歡迎語,介紹blog的整體情況Usage: blog [flags]Flags: -h, --help help for blog

執行下blog命令看下效果:

$ ./main blog歡迎來到路多辛的blog,能幫助到大家是我最大的快樂!

更多使用方法可以參考官方文檔 https://github.com/spf13/cobra/blob/main/user_guide.md。

版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。

(0)
上一篇 2024年5月9日 上午11:22
下一篇 2024年5月9日 上午11:34

相關推薦

  • 精益項目管理系統

    精益項目管理系統:讓項目管理更加高效 隨著現代項目管理的不斷進步,越來越多的公司開始采用精益項目管理系統來提升項目管理的效率和質量。精益項目管理系統是一種基于精益生產理念的軟件工具…

    科研百科 2024年8月22日
    27
  • 科研項目基本情況簡介 科研項目情況簡介怎么寫

    科研項目情況簡介怎么寫 科研項目情況簡介是一份介紹科研項目的文檔,通常包括項目的名稱,研究目的,研究內容,研究方法,研究進度和研究成果等內容。一份好的科研項目情況簡介可以幫助讀者了…

    科研百科 2024年4月2日
    100
  • 科研項目人力資源費

    科研項目人力資源費科研項目人力資源費近日,廣西桂林、河南、廣東等地方組織實施調研工作,并擬發了《新型冠狀病毒肺炎疫情報告》(以下簡稱“COVID-19”)。該報告中提出的“雙十一”…

    科研百科 2024年11月26日
    0
  • 2017一建項目管理

    2017一建項目管理 一建項目管理是指項目管理團隊在項目執行過程中,通過對項目的規劃,組織,控制和協調等方面的全面管理,確保項目按時,按質,按量完成,并達到預期目標的過程。 一建項…

    科研百科 2025年8月7日
    1
  • 科研項目的總體單位

    科研項目的總體單位 科研項目的總體單位是指在科研項目中負責整個項目組織、管理、協調、控制和評估的單位。一個好的科研項目的總體單位應該具有高效、協調、透明和負責的特點,以確保整個項目…

    科研百科 2025年3月4日
    1
  • 高頓推薦的工作怎么樣(高頓科研項目怎么樣啊知乎)

    高頓科研項目怎么樣? 高頓科研項目是一個專注于科學素養教育和科技創新的公益組織。該項目旨在通過科學普及和教育,提高公眾對科學的理解和認識,培養科學思維和實踐技能,促進科學素養的提高…

    科研百科 2024年4月5日
    66
  • 中醫藥的科研項目包括

    中醫藥的科研項目包括 中醫藥是中國傳統醫學的重要組成部分,具有悠久的歷史和廣泛的應用范圍。近年來,隨著科技的不斷發展,中醫藥的研究也取得了許多重要的進展。以下是一些中醫藥的科研項目…

    科研百科 2025年4月28日
    2
  • 微信項目管理系統源碼

    微信項目管理系統源碼:一個高效的團隊協作工具 隨著微信的廣泛普及,越來越多的團隊開始利用微信來開展業務。但是,如何高效地利用微信來管理項目是一個值得探討的問題。今天,我們將介紹一個…

    科研百科 2025年6月18日
    0
  • 生態農場科研項目申報材料

    生態農場科研項目申報材料 近年來,隨著城市化和工業化的快速發展,人類活動對生態環境的影響日益加劇,生態農場作為一種新興的農業模式,備受關注。生態農場旨在通過模擬自然環境,實現農業生…

    科研百科 2025年5月18日
    1
  • 設備運維管理 開源

    設備運維管理開源:設備運維管理的下一個趨勢 隨著云計算、物聯網、人工智能等新技術的快速發展,設備運維管理已經成為了企業運維中不可或缺的一部分。但是,傳統的設備運維管理方式已經無法滿…

    科研百科 2024年11月16日
    0