<分区>
最近我参与了从 Windows 到 Linux 的代码移植。我遇到了很多检索注册表项并对其进行编辑的 Windows 函数。我不确定 Linux 的等效方法是什么。我知道注册表只是一个 Windows 数据库,它以 "Key=value" 格式存储数据。我正在考虑 INI 文件。除了这个还有什么更有效的吗?
我不是从存储的角度提问。我的问题与 Linux 中的注册表等效项有关。 我们如何在 Linux 中实现注册表结构?
<分区>
最近我参与了从 Windows 到 Linux 的代码移植。我遇到了很多检索注册表项并对其进行编辑的 Windows 函数。我不确定 Linux 的等效方法是什么。我知道注册表只是一个 Windows 数据库,它以 "Key=value" 格式存储数据。我正在考虑 INI 文件。除了这个还有什么更有效的吗?
我不是从存储的角度提问。我的问题与 Linux 中的注册表等效项有关。 我们如何在 Linux 中实现注册表结构?
最佳答案
在 Linux 中为每个用户存储配置的典型方法是将其存储在 /home/username/.someapp
中,其中 someapp
是您的程序的名称。实际上,我喜欢 Linux 中的这一点,因为当我移动到另一台计算机时,我所要做的就是保存/移动我的主目录,这将保存我的所有配置。
在 Windows 上,注册表有一个用户部分 HKEY_CURRENT_USER
,其他代表任何用户的部分,例如 HKEY_LOCAL_MACHINE
,对整个系统都是全局的。对于用户部分,您应该像我之前解释的那样将配置放在用户目录中,因为它不需要任何 super 用户权限。您可以选择将本地机器部分也放在用户目录中,然后每个用户都将有单独的配置,或者将其放在类似 /var/lib/someapp
的地方,但请记住它将是只读的。
有了这一切,请记住您应该创建自己的配置格式,或使用一些库,例如 libconfig 、XML 或 JSON。
关于c++ - Linux 的注册表等效项是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43580271/