我打算开发一个跨平台脚本。在Linux和其他操作系统上,它将配置存储在XDG_CONFIG_HOME
中,并将数据文件(特别是下载的插件)存储在XDG_DATA_HOME
中。在Windows上,两者都将使用APPDATA
(除非有人有更好的主意)。但是,在Mac OS X上应该做些什么呢?
乍一看便是Macbook的~/Library
目录,我看到了Preferences
和Application Support
文件夹。我本来打算使用这些文件,但是Preferences
似乎只包含带有反向域名的plists,例如com.apple.foo.bar.baz.plist
,并且Application Support
中的每个文件夹都对应于/Applications
中的 bundle 包,因此我不确定系统对不兼容文件的反应如何不符合其标准。将它们直接存储在~/Library
中可能是一种选择,但是如果有更好的放置位置,我不想使用杂散的myscript.conf
文件对其进行污染。
我应该在哪里存储这些文件? (而且请不要只说~/.myscript
。我知道这是Unix的传统,但是让我在主目录中看到随机的点文件很讨厌。)
最佳答案
我会使用~/Library/Application Support/script_name/
。 Application Support
中的子目录通常由包括Apple自己的软件在内的各种应用程序使用。但是它不是由操作系统强制执行的,也不与/Applications
内部的应用程序绑定(bind)。因此,您完全可以在其中创建自己的目录。
有关OS X的目录结构,请参见this Apple document。
关于macos - Mac OS X上的XDG_CONFIG_HOME和XDG_DATA_HOME是否等效?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3373948/