读取Go中的命令行参数的示例

271 阅读1分钟

读取Go中的命令行参数

Reading command line arguments in Go

命令行参数是一种在程序启动时向其提供额外信息的方式。提供命令行参数的最简单方法是在运行命令时在命令后面指定一个空格分隔的数值列表。

$ ./my-program Arg1 Arg2 Arg3

阅读 Go中的命令行参数

在Go中,你可以使用变量来访问原始命令行参数。 os.Args变量。它是一个片断,可以保存所有从程序名开始的命令行参数。

package main

import (
	"fmt"
	"os"
)

func main() {
	args := os.Args
	fmt.Printf("All arguments: %v\n", args)

	argsWithoutProgram := os.Args[1:]
	fmt.Printf("Arguments without program name: %v\n", argsWithoutProgram)
}
$ go build command-line-arguments.go

$ ./command-line-arguments Hello World From Command Line
All arguments: [./command-line-arguments Hello World From Command Line]
Arguments without program path: [Hello World From Command Line]

Go命令行参数例子

下面是另一个例子,它从命令行中读取一堆名字,并对所有的名字说你好。

package main

import (
	"fmt"
	"os"
)

func main() {
	names := os.Args[1:]

	for _, name := range names {
		fmt.Printf("Hello, %s!\n", name)
	}
}
$ go build say-hello-to.go
$ ./say-hello-to Rajeev Sachin Jack Daniel
Hello, Rajeev!
Hello, Sachin!
Hello, Daniel!