- 授权协议: MIT
- 开发语言: Google Go
- 操作系统: 跨平台
- 软件首页: https://github.com/mkideal/cli
- 软件文档: https://github.com/mkideal/cli
软件介绍
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
数据结构与算法经典问题解析
纳拉辛哈·卡鲁曼希 / 骆嘉伟 / 机械工业出版社 / 2016-6-1 / CNY 79.00
本书是一本数据结构方面的优秀教材,以Java为描述语言,介绍了计算机编程中使用的数据结构和算法。本书强调问题及其分析,而非理论阐述,共分为21章,讲述了基本概念、递归和回溯、链表、栈、队列、树、优先队列和堆、并查集DAT、图算法、排序、查找、选择算法(中位数)、符号表、散列、字符串算法、算法设计技术、贪婪算法、分治算法、动态规划算法、复杂度类型等内容。每章首先阐述必要的理论基础,然后给出问题集。全......一起来看看 《数据结构与算法经典问题解析》 这本书的介绍吧!
