登录
首页 >  Golang >  Go问答

处理命令行参数的方法及其区分

来源:stackoverflow

时间:2024-02-24 23:57:21 188浏览 收藏

学习知识要善于思考,思考,再思考!今天golang学习网小编就给大家带来《处理命令行参数的方法及其区分》,以下内容主要包含等知识点,如果你正在学习或准备学习Golang,就都不要错过本文啦~让我们一起来看看吧,能帮助到你就更好了!

问题内容

我想创建一个具有一些参数的脚本,例如 param1param2param3param1 必须设置,否则会打印错误并退出脚本,而其他 2 个参数不是必需的。

如果我运行 ./main param1 abc param2 good 在构建后如何执行 main 操作,则在 param1 中保存字符串 abc 并在 param2 中保存字符串 good


解决方案


您可以使用 flag 包。请参阅下面的代码:

package main

import (
    "flag"
    "fmt"
    "os"
)

func main() {

    var param1 string
    var param2 string
    var param3 string
    var param4 string

    flag.StringVar(&param1, "param1", "", "Parameter 1")
    flag.StringVar(&param2, "param2", "", "Parameter 2")
    flag.StringVar(&param3, "param3", "", "Parameter 3")
    flag.StringVar(&param4, "param4", "", "Parameter 4")

    flag.Parse()
    if param1 == "" {
        fmt.Print("Missing required parameter 1 \n")
        os.Exit(1)
    }

}

构建完成后,您可以运行 ./main -param1=abc -param2=good ,这会将 param1param2 变量分别设置为 abcgood

本篇关于《处理命令行参数的方法及其区分》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于Golang的相关知识,请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>