.config 是否会根据不同的系统语言而有不同的名称?

.config 是否会根据不同的系统语言而有不同的名称?

我正在制作一个读取/写入 ~/.config 文件夹中文件的应用程序;但是,我想确保它在所有系统下都能正常工作。.config不同的系统语言有不同的名称吗?有没有比使用硬编码字符串更好的方法来访问它的值.config?(例如环境变量)

最佳做法是什么?如果没有既定的最佳做法,那么最简单的方法是什么,可以保证获得所需的结果?

答案1

该配置目录由XDG 基础目录规范标准。

你的问题的答案在环境变量部分:

$XDG_CONFIG_HOME定义应存储用户特定配置文件的相对基础目录。如果未设置或为空,则应使用$XDG_CONFIG_HOME默认值。$HOME/.config

请务必阅读基本,以确保您对正确的文件使用了正确的目录。

您可能还想知道当$HOME未设置时该怎么做。XDG 没有指定这一点,但是有些应用程序会抛出错误并退出。或者,您可以通过获取当前用户 IDgetuid(2)并使用getpwuid(3)它提取主目录。

答案2

这是XDG 基础目录规范

$XDG_CONFIG_HOME 定义应存储用户特定配置文件的相对基础目录。如果 $XDG_CONFIG_HOME 未设置或为空,则应使用默认值 $HOME/.config。

相关内容