命令行参数

命令行参数解析是 Go 与其他语言非常相似。在你的代码中,你只需访问参数片,其中第一个参数将是程序本身的名称。

快速举例:

package main

import (
    "fmt"
    "os"
)

func main() {

    progName := os.Args[0]
    arguments := os.Args[1:]

    fmt.Printf("Here we have program '%s' launched with following flags: ", progName)

    for _, arg := range arguments {
        fmt.Printf("%s ", arg)
    }

    fmt.Println("")
}

输出将是:

$ ./cmd test_arg1 test_arg2
Here we have program './cmd' launched with following flags: test_arg1 test_arg2

每个参数只是一个字符串。在 os 包中它看起来像:var Args []string