string - 如何读取外部变量

标签 string go var

我正在尝试读取--configFile=""作为外部参数发送的变量,但是即使我通过了绝对路径,也总是找不到错误
Vars:

var (
    c                          Config
    conf                       = c.getConf()
    app                        = kingpin.New("exporter", "Exporter for Prometheus.")
    configFile                 = app.Flag("configFile", "Configuration file destination (/etc/exporter/config.yaml)").Default("/etc/exporter/config.yaml").String()
)
配置:
func (c *Config) getConf() *Config {

    yamlFile, err := ioutil.ReadFile(string(*configFile))
    if err != nil {
        log.Errorf("yamlFile.Get err   #%v ", err)
    }
    err = yaml.Unmarshal(yamlFile, c)
    if err != nil {
        log.Errorf("Unmarshal: %v", err)
    }
    return c
}
命令/输出:
server:/etc/exporter # ./exporter --configFile="/etc/exporter/config.yaml"
ERRO[0000] yamlFile.Get err   #open : no such file or directory
ls -ltr:
total 14152
-rw------- 1 root root     1334 Sep 25 20:47 config.yaml
-rwxrwxr-x 1 root root 14466568 Sep 25 22:03 exporter

最佳答案

在此处替换代码https://github.com/rafal-szypulka/itm_exporter/blob/master/main.go#L51
与:

conf *Config
在此处替换代码https://github.com/rafal-szypulka/itm_exporter/blob/master/main.go#L354
与:
p := kingpin.MustParse(app.Parse(os.Args[1:]))
conf = c.getConf()
switch p {

关于string - 如何读取外部变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64073012/

相关文章:

C# 正则表达式中匹配字母、数字和特殊字符

python - 不那么丑陋但可靠的方法来找到嵌入在字符串中的浮点值而不需要填充?

go - 使用 Golang 启动 D-Bus 服务

dictionary - Go中的深度合并订单图

c - 字节 '\x09' 终止字符串?

r - R 是否区分字符向量和字符串?

go - 为什么当我在发件人端关闭时仍然会出现 "send on closed channel" panic ?

javascript - 在 JS 中,在为变量赋值之前声明变量名有什么好处?

javascript - 尝试获取一个变量的值并将其作为另一个变量的名称。 JavaScript

mongodb - 更新 MongoDB 中的集合时出错