go之命令行工具urfave-cli

一、urfave/cli

urfave/cli 是一个声明性的、简单、快速且有趣的包,用于用 Go 构建命令行工具。

二、快速使用

2.1 引入依赖
bash 复制代码
go get github.com/urfave/cli/v2
2.2 demo
Go 复制代码
package main

import (
    "fmt"
    "log"
    "os"

    "github.com/urfave/cli/v2"
)

func main() {
	// 创建 urfave app 实例
	app := &cli.App{
		// 设置命令
		Commands: []*cli.Command{
			{
				Name:    "add",
				Aliases: []string{"a"},
				Usage:   "add a task to the list",
				Flags: []cli.Flag{
					&cli.StringFlag{
						Name:  "type",
						Value: "daily",
						Usage: "add eat --type=daily",
					},
				},
				Action: func(cCtx *cli.Context) error {
					fmt.Println("added task: ", cCtx.Args().First(), "type=", cCtx.String("type"))
					return nil
				},
			},
		},
	}
	// 启动命令
	if err := app.Run(os.Args); err != nil {
		log.Fatal(err)
	}
}
2.3 命令行使用
相关推荐
0110_102413 分钟前
tauri + rust的环境搭建---初始化以及构建
开发语言·后端·rust
文心快码BaiduComate17 分钟前
限时集福!Comate挂件/皮肤上线,符(福)气掉落中~
前端·后端·程序员
像风一样自由202018 分钟前
Rust Tokio vs Go net/http:云原生与嵌入式生态选型指南
开发语言·golang·rust
道之极万物灭42 分钟前
Go小工具合集
开发语言·后端·golang
瑞士卷@42 分钟前
MyBatis入门到精通(Mybatis学习笔记)
java·数据库·后端·mybatis
yuuki2332331 小时前
【C语言】文件操作(附源码与图片)
c语言·后端
IT_陈寒1 小时前
Python+AI实战:用LangChain构建智能问答系统的5个核心技巧
前端·人工智能·后端
无名之辈J2 小时前
系统崩溃(OOM)
后端
码农刚子2 小时前
ASP.NET Core Blazor简介和快速入门 二(组件基础)
javascript·后端
间彧2 小时前
Java ConcurrentHashMap如何合理指定初始容量
后端