如何在 CLI 中输入文件路径作为标志以及如何读取文件内容?

时间:2021-01-28 06:08:43

标签: go command-line-interface

我想在我用 Go 编写的命令行界面中输入一个文件路径作为标志。我的最终目标是读取我作为标志输入的路径的那个文件的内容。我尝试了以下代码,但没有用。

    app := &cli.App{
    Flags: []cli.Flag{
        &cli.StringFlag{
            Name:        "privatekeypath",
            Value:       "no value",
            Aliases:     []string{"y"},
            Usage:       "random",
            Destination: &priv_path,
        },
        &cli.StringFlag{
            Name:        "privatekey",
            Value:       "no value",
            Aliases:     []string{"k"},
            Usage:       "random",
            Destination: &userprivatekey,
            FilePath:    priv_path,
        },

以上代码读取变量priv_path中路径的值和userprivatekey中的实际内容。命令行如下:

randomcli --privatekeypath=/abc/def/privatekey.txt

1 个答案:

答案 0 :(得分:1)

看来您正在使用库 github.com/urfave/cli,如果是这样,您可以通过名称或别名获取值。

c.String("privatekey")

c.String("k")
相关问题