Go 命令行参数
最后修改时间 2024 年 4 月 11 日
在本文中,我们将展示如何将命令行参数传递给 Go 程序。
命令行参数
命令行参数是传递给程序的选项和数据。我们通常将参数传递给控制台程序,但有时也将参数传递给 GUI 程序。
os.Args 包含命令行参数。此切片中的第一个值是程序名称,而 os.Args[1:] 包含程序的参数。单个参数通过索引操作进行访问。
read_args.go
package main
import (
"fmt"
"os"
"reflect"
)
func main() {
prg_name := os.Args[0]
fmt.Printf("The program name is %s\n", prg_name)
names := os.Args[1:]
fmt.Println(reflect.TypeOf(names))
for _, name := range names {
fmt.Printf("Hello, %s!\n", name)
}
}
此示例接收命令行参数。
prg_name := os.Args[0]
fmt.Printf("The program name is %s\n", prg_name)
我们获取并打印第一个参数,即程序名称。
names := os.Args[1:]
我们获取所有接收到的参数。
fmt.Println(reflect.TypeOf(names))
我们打印保存参数的类型(切片)。
for _, name := range names {
fmt.Printf("Hello, %s!\n", name)
}
我们遍历参数,并从每个参数构建一条消息。
$ go build read_args.go $ ./read_args Jan Peter Lucia The program name is ./read_args []string Hello, Jan! Hello, Peter! Hello, Lucia!
我们构建程序并运行它。我们在命令行上传递了三个名称给程序。
来源
在本文中,我们介绍了如何将命令行参数传递给 Go 程序。