# Mac 怎么显示隐藏文件

> 在访达里按 Command + Shift + . 就能看到 Mac 上的隐藏文件，再讲怎么一直显示、怎么进 ~/Library，以及哪些隐藏项目可以删。

Published: 2026-11-09

想在 Mac 上显示隐藏文件，打开一个访达窗口按 `Command + Shift + .`（句号）就行，隐藏的项目会变成半透明显示出来，再按一次又藏回去，这个快捷键在访达和大多数打开、存储对话框里都能用，它只改变你看到的东西，不动文件本身。下面再讲一直显示的设置、终端的看法、怎么进 `~/Library`，以及哪些隐藏项目可以碰。

## 三种看的办法

| 想要 | 做法 | 持续多久 |
| --- | --- | --- |
| 在访达里临时看一眼 | `Command + Shift + .` | 直到再按一次 |
| 让访达一直显示 | 下面的 `defaults` 命令 | 直到删掉这个设置 |
| 列出名字和标记 | 终端里的 `ls -a` 或 `ls -lO` | 只有这一条命令 |

一直显示的设置需要重启访达，它的窗口会关掉再打开：

```bash
defaults write com.apple.finder AppleShowAllFiles -bool true
killall Finder
```

想恢复默认：

```bash
defaults delete com.apple.finder AppleShowAllFiles
killall Finder
```

大多数人用快捷键就够了，一直显示的话，每个文件夹里都会多出 `.DS_Store` 和 `.localized`，也更容易拖错或者删错东西。

## 文件为什么会被隐藏

macOS 隐藏一个项目有两种原因，一种是名字以句号开头，比如 `.zshrc`，这是 Unix 留下的老规矩，另一种是带了 `hidden` 标记，`~/Library` 的名字很普通却看不到，靠的就是这个。终端里 `ls -a` 两种都能列出来，`ls -lO` 还会把标记打印出来：

```bash
ls -a ~
ls -lO ~ | grep hidden
```

这个标记也可以自己改，下面这条去掉 `~/Library` 的标记，它就会一直显示在个人文件夹里：

```bash
chflags nohidden ~/Library
```

对一个路径执行 `chflags hidden` 又能把它藏起来，不过它只是不在访达里显示，算不上隐私保护，`ls -a` 和任何有权限的 App 照样读得到。

## 怎么进 ~/Library 和其他隐藏文件夹

只想打开某一个文件夹，不用把所有东西都显示出来。在访达里按住 `Option` 打开「前往」菜单，列表里就会出现「资源库」，其他路径按 `Command + Shift + G` 打开「前往文件夹」直接输入，比如 `~/.config` 或者 `/private/var/log`。`~/Library` 下面每个文件夹放什么，可以看 [Mac 资源库文件夹里都是什么](https://mole.fit/zh/blog/mac-library-folder-explained)。

## 这些隐藏项目都是什么

| 项目 | 是什么 | 能不能删 |
| --- | --- | --- |
| `.DS_Store` | 访达记录的这个文件夹的显示设置 | 可以，访达会写一份新的，这个文件夹的图标位置和视图设置会丢 |
| `.localized` | 一个空标记，让文件夹显示翻译后的名字 | 留着，几乎不占空间 |
| `~/.Trash` | 废纸篓里的东西 | 从访达里清倒废纸篓 |
| `.zshrc`、`.zprofile`、`.gitconfig` | shell 和工具的设置 | 不要删，除非你清楚里面写了什么 |
| `.ssh`、`.gnupg` | 私钥和已知主机 | 不要删，丢了私钥可能就登不上服务器了 |
| `~/.npm`、`~/.cache`、`~/.cargo`、`~/.gradle` | 开发工具的缓存和依赖包 | 通常可以，优先用工具自己的清理命令 |
| `/private`、`/usr`、`/bin` | 操作系统的一部分 | 不要删 |

隐藏文件夹占了好几 GB 的话，大概率是上面那几个开发工具的目录。想看个人文件夹里最大的项目，隐藏的也算在内：

```bash
du -hd 1 ~ 2>/dev/null | sort -h | tail -20
```

跑这条命令时 macOS 可能会问终端能不能读取桌面、文稿等受保护的文件夹，拒绝的话只是这些数字会偏小。

## 不要这样做

- 不要因为看不懂名字就删掉点开头的文件夹，`.ssh` 和 App 的配置目录看起来和缓存没什么两样。
- 不要为了省空间跑命令删光全盘的 `.DS_Store`，它们本来就很小，访达很快又会写回来。
- 如果和不太熟悉电脑的人共用这台 Mac，不要一直开着显示隐藏文件，系统文件被拖走了都不一定能发现。
- 不要指望 `chflags hidden` 能保护隐私内容。

## Mole 能帮什么

[Mole](https://mole.fit/zh/) 的「分析」本身就会列出隐藏项目，不用按快捷键，很大的 `~/.docker` 或 `~/.gradle` 就排在普通文件夹旁边，大多数点开头的文件夹在列表里图标会暗一些，把鼠标放到一行或者一个方块上，认识的文件夹会有一句话说明里面是什么。要不要移到废纸篓由你从右键菜单决定，访达的「放回原处」可以撤销。磁盘最顶层的几个 Apple 索引文件夹，比如 `.Spotlight-V100` 和 `.fseventsd`，不会列在最顶层，`~/Library` 本身这类目录树的头部，「分析」不让移走，`/private` 这样的系统区域则根本不列。

## 常见问题

### 为什么按 Command + Shift + . 没反应？

先点一下访达窗口，让访达成为当前 App，并且用主键盘上的句号键，所在文件夹本来就没有隐藏项目时也不会有变化，有些 App 用自己画的文件对话框，这个快捷键在里面不起作用。

### 怎么把隐藏文件再藏回去？

再按一次 `Command + Shift + .`，如果用的是 `defaults` 命令，就跑上面的删除命令，再跑 `killall Finder`。

### 显示隐藏文件会让 Mac 变慢吗？

不会，它只改变访达在列表里画哪些项目，没有文件被移动或者修改。

### 隐藏文件可以删吗？

有的可以，有的不行，所以光看名字不够，先弄清楚是谁在用它，优先用那个工具自己的清理命令，要删也先移到废纸篓，不是直接删除，出了问题还能放回去。

### 打开或存储对话框里怎么显示隐藏文件？

对话框打开时按 `Command + Shift + .`，隐藏项目会半透明地出现在列表里，可以直接选。

---

Canonical HTML page: https://mole.fit/zh/blog/show-hidden-files-mac
Blog index for agents: https://mole.fit/zh/blog/llms.txt
Site index for agents: https://mole.fit/llms.txt
