命令行程序构建工具 mkideal/cli

码农软件 · 软件分类 · 常用工具包 · 2019-08-14 19:57:45

软件介绍

cli是一个用go语言写成的用于快速构建go语言命令行程序的工具。

Key features

  • Lightweight and easy to use.
  • Defines flag by tag, e.g. flag name(short or/and long), description, default value, password, prompt and so on.
  • Type safety.
  • Output looks very nice.
  • Supports custom Validator.
  • Supports slice and map as a flag.
  • Supports any type as a flag field which implements cli.Decoder interface.
  • Supports any type as a flag field which use FlagParser.
  • Suggestions for command.(e.g. hl => help, "veron" => "version").
  • Supports default value for flag, even expression about env variable(e.g. dft:"$HOME/dev").

  • 下图是用cli创建的示例程序gogo的帮助显示:

一个hello的例子

package main

import (
    "github.com/mkideal/cli"
)

type argT struct {
    Help bool   `cli:"!h,help" usage:"display help information"`
    Name string `cli:"name" usage:"your name" dft:"world"`
    Age  uint8  `cli:"a,age" usage:"your age" dft:"100"`
}

func main() {
    cli.Run(&argT{}, func(ctx *cli.Context) error {
        argv := ctx.Argv().(*argT)
        if argv.Help {
            ctx.String(ctx.Usage())
        } else {
            ctx.String("Hello, %s! Your age is %d?\n", argv.Name, argv.Age)
        }
        return nil
    })
}

更多有用的例子:

http://www.mkideal.com/golang/cli-examples.html


本文地址:https://codercto.com/soft/d/12372.html

数据结构与算法经典问题解析

数据结构与算法经典问题解析

纳拉辛哈·卡鲁曼希 / 骆嘉伟 / 机械工业出版社 / 2016-6-1 / CNY 79.00

本书是一本数据结构方面的优秀教材,以Java为描述语言,介绍了计算机编程中使用的数据结构和算法。本书强调问题及其分析,而非理论阐述,共分为21章,讲述了基本概念、递归和回溯、链表、栈、队列、树、优先队列和堆、并查集DAT、图算法、排序、查找、选择算法(中位数)、符号表、散列、字符串算法、算法设计技术、贪婪算法、分治算法、动态规划算法、复杂度类型等内容。每章首先阐述必要的理论基础,然后给出问题集。全......一起来看看 《数据结构与算法经典问题解析》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

html转js在线工具
html转js在线工具

html转js在线工具