Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux有哪些目录是macOS没有的';T_Macos_Unix_Filesystems_Finder_Nautilus - Fatal编程技术网

Linux有哪些目录是macOS没有的';T

Linux有哪些目录是macOS没有的';T,macos,unix,filesystems,finder,nautilus,Macos,Unix,Filesystems,Finder,Nautilus,我是一个Python程序员,正在尝试创建一个为我正在制作的游戏创建保存数据的系统,我希望它在Ubuntu之类的东西中与在macOS中不同的位置。由于我没有macOS,也不可能仅仅通过建立一个ISO来获得macOS虚拟机,所以我无法查看文件和文件夹,看看Linux有什么(或没有什么) 我已经尝试过在VirtualBox中构建一个虚拟机,试图获得一个ISO,但根本没有成功 macOS的哪些文件或文件夹与Linux相同,反之亦然?macOS上的应用程序设置通常保存在~/Library中的某个位置:常用

我是一个Python程序员,正在尝试创建一个为我正在制作的游戏创建保存数据的系统,我希望它在Ubuntu之类的东西中与在macOS中不同的位置。由于我没有macOS,也不可能仅仅通过建立一个ISO来获得macOS虚拟机,所以我无法查看文件和文件夹,看看Linux有什么(或没有什么)

我已经尝试过在VirtualBox中构建一个虚拟机,试图获得一个ISO,但根本没有成功


macOS的哪些文件或文件夹与Linux相同,反之亦然?

macOS上的应用程序设置通常保存在~/Library中的某个位置:常用位置是~/Library/Preferences/com.example.mycoolgame.plist作为首选项(应为plist格式,“com.example.mycoolgame”应为您拥有的有效捆绑ID)(您应该拥有域))。此路径的优点/缺点是高级用户知道此目录,并可以根据自己的意愿编辑其中的文件

然后你就有了~/Library/Caches来缓存数据。所有缓存数据都应该放在这个目录下的某个地方。(但千万不要将它用于无法重新生成或重新下载的内容。)

~/Library/ApplicationSupport/YourApplicationName/…:在这里,您基本上可以做任何您喜欢的事情。如果“YourApplicationName”在这种情况下是全局唯一的,那就太好了。所以最好将其设置为长的。用户通常看不到“~/Library”下面任何内容的文件系统内容,因此不需要短名称

当然,您也可以将savegames放在~/Documents/mycolgame/savegames中,告诉用户您将游戏保存在那里

答:我不确定系统API是否正确地扩展了“~”。我认为可能不会:使用以“~”开头的路径调用fopen很可能不会做正确的事情。users目录位于类似“/users/max”的位置,因此如果用户名为“max”,则命令行中的“~”将扩展为“/users/max”

我无法回答您最初的问题“Linux有哪些目录而macOS没有?”因为我目前手头没有Linux设备,而且我认为它对您的用例没有帮助



对于全局数据,还有“/库”层次结构..但普通用户无法访问此位置,因此您的游戏需要请求管理员权限,这将使一切变得更加复杂,这将使macOS用户感到不友好。macOS的方法是拥有一个自包含的应用程序包,并使用在用户主文件夹中。

macOS上的应用程序设置通常保存在~/Library中的某个位置:常用位置为~/Library/Preferences/com.example.mycolgame.plist作为首选项(应为plist格式,“com.example.mycolgame”应为您拥有的有效捆绑包ID(您应拥有该域))。此路径的优点/缺点是高级用户知道此目录,可以根据自己的意愿编辑其中的文件

然后你就有了~/Library/Caches来缓存数据。所有缓存数据都应该放在这个目录下的某个地方。(但千万不要将它用于无法重新生成或重新下载的内容。)

~/Library/ApplicationSupport/YourApplicationName/…:在这里,您基本上可以做任何您喜欢的事情。如果“YourApplicationName”在这种情况下是全局唯一的,那就太好了。所以最好将其设置为长的。用户通常看不到“~/Library”下面任何内容的文件系统内容,因此不需要短名称

当然,您也可以将savegames放在~/Documents/mycolgame/savegames中,告诉用户您将游戏保存在那里

答:我不确定系统API是否正确地扩展了“~”。我认为可能不会:使用以“~”开头的路径调用fopen很可能不会做正确的事情。users目录位于类似“/users/max”的位置,因此如果用户名为“max”,则命令行中的“~”将扩展为“/users/max”

我无法回答您最初的问题“Linux有哪些目录而macOS没有?”因为我目前手头没有Linux设备,而且我认为它对您的用例没有帮助


对于全局数据,还有“/库”层次结构..但普通用户无法访问此位置,因此您的游戏需要请求管理员权限,这将使一切变得更加复杂,这将使macOS用户感到不友好。macOS的方法是拥有一个自包含的应用程序包,并使用在用户主文件夹中。

要完成@Michael的(优秀)回答,以下是在最新稳定版本的MacOS系统(10.14.2)上重新安装后的主目录和根目录列表

家庭主任:

MacBook-Pro:~ max$ ls -al ~
total 16
drwxr-xr-x+ 15 max    staff   480 Jan 14 06:43 .
drwxr-xr-x   5 root  admin   160 Jan  6 18:59 ..
-r--------   1 max    staff     7 Jan  6 18:59 .CFUserTextEncoding
drwx------   2 max    staff    64 Jan 14 06:40 .Trash
-rw-------   1 max    staff     0 Jan 13 07:11 .bash_history
drwx------  10 max    staff   320 Jan 14 06:40 .bash_sessions
-rw-------   1 max    staff   908 Jan 14 06:43 .viminfo
drwx------+  3 max    staff    96 Jan  6 18:59 Desktop
drwx------+  3 max    staff    96 Jan  6 18:59 Documents
drwx------+  3 max    staff    96 Jan  6 18:59 Downloads
drwx------@ 51 max    staff  1632 Jan 13 07:11 Library
drwx------+  3 max    staff    96 Jan  6 18:59 Movies
drwx------+  3 max    staff    96 Jan  6 18:59 Music
drwx------+  3 max    staff    96 Jan  6 18:59 Pictures
drwxr-xr-x+  4 max    staff   128 Jan  6 18:59 Public
为了完成@Michael给出的(优秀)答案,这里列出了在最新稳定版本MacOS系统(10.14.2)上重新安装后的主目录和根目录

家庭主任:

MacBook-Pro:~ max$ ls -al ~
total 16
drwxr-xr-x+ 15 max    staff   480 Jan 14 06:43 .
drwxr-xr-x   5 root  admin   160 Jan  6 18:59 ..
-r--------   1 max    staff     7 Jan  6 18:59 .CFUserTextEncoding
drwx------   2 max    staff    64 Jan 14 06:40 .Trash
-rw-------   1 max    staff     0 Jan 13 07:11 .bash_history
drwx------  10 max    staff   320 Jan 14 06:40 .bash_sessions
-rw-------   1 max    staff   908 Jan 14 06:43 .viminfo
drwx------+  3 max    staff    96 Jan  6 18:59 Desktop
drwx------+  3 max    staff    96 Jan  6 18:59 Documents
drwx------+  3 max    staff    96 Jan  6 18:59 Downloads
drwx------@ 51 max    staff  1632 Jan 13 07:11 Library
drwx------+  3 max    staff    96 Jan  6 18:59 Movies
drwx------+  3 max    staff    96 Jan  6 18:59 Music
drwx------+  3 max    staff    96 Jan  6 18:59 Pictures
drwxr-xr-x+  4 max    staff   128 Jan  6 18:59 Public

我认为这个答案实际上是合适的,bc我可以向你保证Linux没有/Library文件夹。谢谢!:我认为这个答案实际上是合适的,bc我可以向你保证Linux没有/Library文件夹。谢谢!:D非常感谢!这对我试图创建的东西帮助很大。非常感谢!这对我的工作帮助很大我想要创造的。