命令行参数 {.zh}

[Command-line arguments](http://en.wikipedia.org/wiki/Command-line_interface#Arguments)是参数化程序执行的常用方法。例如,`go run hello.go使用rungo程序的hello.go`参数。

  1. package main
  2. import "os"
  3. import "fmt"
  4. func main() {

os.Args提供对原始命令 - 线性参数的访问。请注意,此slice中的第一个值是程序的路径,而os.Args [1:]保存程序的参数。

  1. argsWithProg := os.Args
  2. argsWithoutProg := os.Args[1:]

您可以使用正常索引获取单个args。

  1. arg := os.Args[3]
  2. fmt.Println(argsWithProg)
  3. fmt.Println(argsWithoutProg)
  4. fmt.Println(arg)
  5. }

要试验命令行参数,最好首先使用go build构建二进制文件。

  1. $ go build command-line-arguments.go
  2. $ ./command-line-arguments a b c d
  3. [./command-line-arguments a b c d]
  4. [a b c d]
  5. c

接下来我们将看看更高级的带标志的命令行处理。