这个问题说在Linux中存储设置的最佳位置是在~/.config/appname。
我正在编写的程序需要使用一个99MB的.dat文件来识别面部特征点,将它嵌入到二进制文件中似乎不是一个好主意。
在Linux上是否有默认的存储资源的位置?目前它只是在可执行文件旁边的目录中,但这需要在运行程序时当前目录为其所在的目录。
如何处理类似于这样的资源是Linux上最好的方式?(可能至少与OSX跨平台)
如果文件是特定于运行应用程序的用户,则应该位于~/的子目录中,但据我所知没有标准,最佳选择取决于文件类型/用途。如果用户可以通过GUI看到它,您可以使用~/Desktop或~/Downloads。如果它是临时的,您可以使用~/tmp或~/var/tmp。
如果不是特定的,则应将其放在/var的子目录中。同样,确切的子目录可能取决于其类型和其他因素。
argv[0]
不是告诉你程序从哪里加载的吗? - Mark Ransomexecl
(或类似函数)运行它,那么对于argv [0]
,你可以传递任何你喜欢的内容。它也会因符号链接等问题而感到困惑。 - Oliver Charlesworth