使用Go语言解析命令行参数的方法

发表时间: 2023-12-14 19:39

在 Go 中,我们可以使用 flag 包来解析命令行参数的标记和值。flag 包提供了多种函数和选项来定义和处理命令行参数

下面是一个简单示例,演示如何使用 flag 包解析 -name-age 两个标记:

package mainimport (	"flag"	"fmt")func main() {	// 定义命令行标记	name := flag.String("name", "", "姓名")	age := flag.Int("age", 0, "年龄")	// 解析命令行参数	flag.Parse()	// 输出结果	fmt.Printf("你好,我叫 %s,今年 %d 岁。\n", *name, *age)}

在上面的示例中,我们使用 flag.Stringflag.Int 函数来定义 -name-age 这两个标记,并将默认值和说明文本传递给这些函数。然后,我们调用 flag.Parse 函数来解析命令行参数。

接着,我们可以通过 *name*age 来获取命令行参数的值,并将它们格式化输出。

你可以在程序运行时使用 -name-age 两个标记来传递参数。例如,使用 go run main.go -name Alice -age 20 来执行程序,它会输出以下信息:

你好,我叫 Alice,今年 20 岁。

除了基本类型的命令行标记外,flag 包还提供了其他选项和函数,可以实现更高级的命令行参数解析。有关更多信息,请参阅 flag 包的文档。