golang flag 加强版

拥有回忆 提交于 2019-12-05 01:24:48

flag plus 让flag单个标记支持多个参数

https://code.csdn.net/leezjl/flagp/tree/master

  • 添加 flagp.StringSlice(name string, value []string, usage string)
  • 添加 flagp.StringSliceVar(p *[]string, name string, value []string, usage string)

Example

b := flagp.Bool("b", false, "bool")
dirs := flagp.StringSlice("d", []string{}, "需要操作的文件/目录, tab切起来")
n := flagp.Int("n", 0, "number")
xFiles := flagp.StringSlice("x", []string{}, "需要忽略的文件/目录, tab切起来")
flagp.Parse()
flagp.Usage()
fmt.Println("dirs = ", *dirs, "xFiles = ", *xFiles, "n = ", *n, "b = ", *b)
$ go run upfl.go -b -d hehe/ xx/ -n 123 -x xx/ dd/

Usage of upfl:
  -b    bool
  -d []string
        需要操作的文件/目录, tab切起来
  -n int
        number
  -x []string
        需要忽略的文件/目录, tab切起来

dirs = [hehe/ xx/] , xFiles = [xx/ dd/] , n = 123 , b = true
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!