一尘不染

Go中类似getopt的行为

go

如何program [-d value] [--abc] [FILE1]在Go中很好地解析程序参数列表并自动处理“ –help”和/或“
–version”(例如“ ”)?


阅读 228

收藏
2020-07-02

共1个答案

一尘不染

我为您而做:

package main

import (
  "fmt";
  "os"
)

func main() {
  for i, arg := range os.Args {
    if arg == "-help" {
      fmt.Printf ("I need somebody\n")
    }else if arg == "-version" {
      fmt.Printf ("Version Zero\n")
    } else {
      fmt.Printf("arg %d: %s\n", i, os.Args[i])
    }
  }
}

另请参阅https://play.golang.org/p/XtNXG-DhLI

测试:

$ ./8.out -help -version猴子业务
我需要一个人
零版本
arg 3:猴子
arg 4:业务
2020-07-02