package main import ( "flag" "fmt" "strings" ) type StringSlice2 []string func (s *StringSlice2) Set(val string) error { *s = append(*s, val) return nil } func (s *StringSlice2) String() string { return strings.Join(*s, ",") } func main() { var files StringSlice2 flag.Var(&files, "file", "指定多个配置文件,可重复传参") flag.Parse() fmt.Printf("文件列表:%#v\n", files) }