本人的系统 10.15.x
Applications
这个当然就是存放各种软件的位置了。
System
包含由Apple安装的系统软件。这此资源是系统正常运行所必须的,位于启动卷宗中。
- /System/Library/DTDs 作为存放系统所使用的各种XML档桉, 并为其格式定义之档桉. Mac OS X Data形式的文书, 分别由三个档桉管理, 分别是PropertyList.dtd,KeyboardLayout.dtd及sdef.dtd三个档桉所组成. 而DTD, 全名为Document Type Definition. 此外, .plist档桉亦是由XML撰写出来的.
- /System/Library/Extensions 其实这裡就是用作存放硬件驱动的地方,苹果不称驱动程序为driver, 而是称为Extension.
- /System/Library/Filesystems 主要就是用以存放 OS X 对应及支持何种文件格式的资料. 例同标准的AppleShare(苹果档桉分享标准), exfat,ntfs。
- /System/Library/Java 如果你装了 java,那么在这里就会有 java 的安装目录。
- /System/Library/OpenSSL 全名为Secure Sockets Layer. 是一套通讯加密技术, 一般用于Web服务器上, 会将密码传送时以加密的暗号处理, 从而减低第三方成功盗 取资料的可能. 一般应用于以 Https 开首的URL上. Mac OS X 内置的 WebServer—Apache, 亦包含这个服务。
- /System/Library/CoreServices/Dock 这是 OS X 的特徵之一, 这部份是有关 Dock 的资料
- /System/Library/CoreServices/Finder.app 这个比较特别, 因为这是一个应用而非一个档桉夹, Finder.app可说是负责掌控整个OS上的一切资源.
- /System/Library/CoreServices/Setup Assistant 所有有关设定助理的资料都存放于此.
- /System/Library/CoreServices/Software Update 这裡就是负责Software update的地方
Library
- /Library/Fonts 存放了字体库,在这里你肯定搜索不到微软雅黑字体。
- /Library/ColorSync, ColorSync 配置和脚本
- /Library/Python,Mac 自带 2.7 版本
- /Library/Perl,5.18 版本
- /Library/Ruby,2.3.0 版本
- /Library/Application Support 存放了一些第三方的插件,像是 Adode 的插件,ss 的插件。
- /Library/ColorPickers 包含了用来选择色彩的资源,它们根据某种模型,比如 HLS (色彩角、饱和度、亮度) 选择器或者 RGB 选择器。
- /Library/Components 包含了系统包和扩展。
- /Library/Desktop Pictures 桌面图片目录。
- Documentation 里有一些条款和文档,像是 icloud 和 game center 的条款
- Extensions 包含了设备驱动和其它内核扩展。
- Java 装了 java 的话,这里是 Java 的运行环境。
还有偏好设置以及插件都应该安装在 Library 目录下适当的子目录中,比如说 Google。
User
包含了某个用户专有的资源。这里也有一个Library文件夹,不同与上边的那个Library,是专为你的帐号服务,里面放的是你自己的个性化字体、配置文件等
- /Users/xxxxUser/applications 包含仅仅当前用户可用的应用。
- /Users/xxxxUser/Desktop 包含了 Finder 在当前登录用户桌面上显示的桌面项。
- /Users/xxxxUser/Documents 包含了用户的个人文稿。
- /Users/xxxxUser/Download 包含了下载的各种文档。
- /Users/xxxxUser/Library 包含了应用设置、偏好设置一起其他用户专有的系统资源
隐藏文件夹
- /bin:储存有基本的UNIX指令,像是 cp,mv,chmod,kill,find,cat,ls,rm 等等命令。
- /sbin:UNIX 系统指令的储存地方, 是比较进阶的指令,像是 ping,shutdown,reboot。
- /etc:系统设定档案储存地方。存了一些命令的配置文件,比如说 ssh 的配置文件。
- /var:改动频繁的文件存放处, 比如说 log 日志
- /tmp:系统的暂存文件,比如说 log。
- /usr:使用者专用档案,私有命令比如说 curl 就放置在 /usr/bin 下,用户自定义装的软件给的命令工具比如说 node 就放置在 /usr/local/bin 下
node 和 npm 安装在哪儿?
本人作为 JS 开发者,自然最关心这个,node 和 npm 到底被安装去了哪儿呢?笔者的 node 版本是 12.x
$ which node
/usr/local/bin/node
$ cd /usr/local/bin/
$ ls -al
total 82656
drwxrwxr-x 83 dasouche admin 2656 4 16 17:02 .
drwxr-xr-x 15 root wheel 480 10 23 14:32 ..
-rw-r--r-- 1 dasouche admin 0 11 22 11:36 .keepme
lrwxr-xr-x 1 dasouche admin 39 12 11 10:16 aclocal -> ../Cellar/automake/1.16.1_1/bin/aclocal
lrwxr-xr-x 1 dasouche admin 44 12 11 10:16 aclocal-1.16 -> ../Cellar/automake/1.16.1_1/bin/aclocal-1.16
lrwxr-xr-x 1 dasouche admin 28 10 23 14:00 brew -> /usr/local/Homebrew/bin/brew
... 省略一些东西
lrwxr-xr-x 1 dasouche admin 56 10 30 20:20 express -> ../lib/node_modules/express-generator/bin/express-cli.js
-rwxr-xr-x 1 root wheel 42276320 10 21 15:53 node
lrwxr-xr-x 1 root admin 38 10 23 14:32 npm -> ../lib/node_modules/npm/bin/npm-cli.js
lrwxr-xr-x 1 root admin 38 10 23 14:32 npx -> ../lib/node_modules/npm/bin/npx-cli.js
... 省略一些东西
lrwxr-xr-x 1 dasouche admin 34 1 19 16:03 umi -> ../lib/node_modules/umi/bin/umi.js
lrwxr-xr-x 1 dasouche admin 39 11 18 15:40 vue -> ../lib/node_modules/@vue/cli/bin/vue.js
lrwxr-xr-x 1 dasouche admin 36 4 16 11:15 yarn -> ../lib/node_modules/yarn/bin/yarn.js
从上文能窥见,node 就在 /usr/local/bin/node,而全局的 node_modules 在 /usr/local/lib/node_modules/,像是什么 umi 和 vue 都是从 node_modules 里软链出来的命令。