123456789101112131415161718192021222324252627 |
- package util
- import (
- "flag"
- "fmt"
- "strings"
- )
- // ParseParamSetFlag parse param from a=b,c=d
- func ParseParamSetFlag(param string, fset *flag.FlagSet) (err error) {
- if param == "" {
- return nil
- }
- args := strings.Split(param, ",")
- for _, arg := range args {
- spec := strings.SplitN(arg, "=", 2)
- if len(spec) == 2 {
- err = fset.Set(spec[0], spec[1])
- } else {
- err = fset.Set(spec[0], "")
- }
- if err != nil {
- return fmt.Errorf("set flag error: %s", err)
- }
- }
- return nil
- }
|