配置键值存储

时间:2011-01-20 19:16:21

标签: perl configuration-files yaml key-value

我正处于脚本/应用程序的计划阶段,我很快就需要编写。简而言之,我将有一个配置文件,用于存储系统配置的多个键值对。各种应用程序将与此文件通信,包括python / shell / rc脚本。

一个示例案例是,当系统引导时,它会拉出静态IP以从该文件分配给自己。这意味着在shell / rc脚本中快速获取此文件中的键/值会很好(ifconfig`evalconffile main_interface``evalconffile primary_ip` up),其中evalconffile是在提供时获取值的脚本用钥匙。

我正在寻找有关解决此问题的最佳方法的建议。我抛弃了使用纯文本文件和perl来检索值的想法。我还讨论了将YAML用于配置文件的想法,因为最终可能会出现一个用例,我们需要一个键和一般扩展的多个值。我知道YAML可以从python和perl访问它,但是我不确定从shell / rc脚本快速访问它的最佳方法是什么。

我是朝着正确的方向前进的吗?

2 个答案:

答案 0 :(得分:1)

SQLite会给你最大的灵活性,因为你似乎不知道将存储在那里的范围。在你提到的所有脚本语言中似乎都支持它。

答案 1 :(得分:1)

一种方法是简单地按照您的意愿执行YAML,然后当shell / RC想要一个键/值对时,他们会调用一个小的Perl脚本(在您的示例中为evalconffile)代表shell脚本解析YAML并打印出值