为了账号安全,请及时绑定邮箱和手机立即绑定

如何优雅地在golang中制作配置文件?

如何优雅地在golang中制作配置文件?

Go
至尊宝的传说 2021-09-13 14:21:11
我是一个golang新手,我只想写一个程序来管理我的redis实例,这样我就可以用特定的配置文件创建一个redis,但我不知道如何优雅地为redis实例创建配置文件。我之前找到了“文本/模板”,这是个好主意吗?
查看完整描述

3 回答

?
米脂

TA贡献1836条经验 获得超3个赞

这取决于您要支持这些配置的文件格式。

一个能够读取大部分格式(从简单的 ini 文件到 JSON 文件)的库是spf13/viper

Viper 是一个完整的 Go 应用配置解决方案。它被设计为在应用程序中工作以处理所有类型的配置。它支持

  • 设置默认值

  • 从 yaml、toml 和 json 配置文件中读取

  • 从环境变量中读取

  • 从远程配置系统(Etcd 或 Consul)读取

  • 从命令行标志读取

  • 设置显式值


查看完整回答
反对 回复 2021-09-13
?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

Redis 配置文件具有简单的文本格式。您可以使用 fmt 包生成配置文件:


fmt.Fprintf(w, "pidfile %s\n", pidFile)

fmt.Fprintf(w, "port %d\n", port)

哪里w是io.Writer输出。


text/template 包也是一个可行的选择。给定模板


pidfile {{.PidFile}}

port {{.Port}}

你可以执行它


t.Execute(w, map[string]interface{}{

   "PidFile": pidFile,

   "Port": port,

})


查看完整回答
反对 回复 2021-09-13
  • 3 回答
  • 0 关注
  • 294 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信