录屏之前,我先把桌面「杀干净」:Mac 多桌面的正确打开方式

最近我有想要录教程的想法,未来可能做 Youtuber,但是现在桌面保存了很多临时文件夹和文件,又不想整理到其它地方,因为很多是待办事项,迁移走很可能遗忘,再者迁移来迁移去很麻烦,不想折腾。

于是问题来了 。

我在想:工作的桌面和录屏的桌面,能不能彻底分开?

答案当然是可以的。

但 macOS 在这件事上有一个很隐蔽的坑,我踩进去之后研究了一番,今天把结论分享给你。


Spaces:Mac 的多桌面系统

macOS 的多桌面功能叫 Spaces,藏在 Mission Control 里。大多数人知道它,但真正用好它的人不多。

进入方式:三指向上滑动触控板,或者按 F3

右上角有个 + 号,点一下,新桌面就建好了。切换桌面用三指左右滑,或者 Control + 左/右方向键

这部分不难。真正让我头疼的,是下面这个问题。


我以为可以只隐藏一个桌面的图标

我当时的想法很简单:桌面 1 放满工作文件,桌面 2 保持干净用来录屏。切到桌面 2 的时候,图标全藏起来,完美。

macOS 有一行命令可以隐藏桌面图标:

# 隐藏所有桌面图标
defaults write com.apple.finder CreateDesktop false && killall Finder

# 恢复显示
defaults write com.apple.finder CreateDesktop true && killall Finder

我执行完,图标没了,清爽。然后我切回桌面 1 ——图标也没了。

原来这个设置是全局的,两个桌面一起受影响。macOS 没有给每个 Space 单独配置桌面显示状态的能力。

这是一个系统级的限制,没有什么绕过去的优雅方案。


可行的方案:一键脚本 + 快捷键

既然无法分开控制,那就做成一键切换:录屏前跑一个脚本隐藏图标,录完再跑一个恢复,绑到快捷键上,几秒钟搞定。

第一步,创建两个脚本

mkdir -p ~/scripts

# 隐藏桌面图标
cat > ~/scripts/hide-desktop.sh << 'EOF'
#!/bin/bash
defaults write com.apple.finder CreateDesktop false
killall Finder
EOF

# 恢复桌面图标
cat > ~/scripts/show-desktop.sh << 'EOF'
#!/bin/bash
defaults write com.apple.finder CreateDesktop true
killall Finder
EOF

chmod +x ~/scripts/hide-desktop.sh
chmod +x ~/scripts/show-desktop.sh

第二步,用 Automator 绑定快捷键

  1. 打开 Automator,新建「Quick Action」
  2. 工作流接收设为「没有输入」
  3. 搜索并添加「运行 Shell 脚本」
  4. 输入 ~/scripts/hide-desktop.sh
  5. 存储,命名为「Hide Desktop Icons」
  6. 打开「系统设置 → 键盘 → 键盘快捷键 → 服务」,找到刚建的 Quick Action,分配一个快捷键

「显示图标」的 Quick Action 同样操作一遍。


踩坑记录:两个必须知道的问题

按照上面的步骤配完,你大概率会遇到两个问题。我都踩过,记录在这里。

问题一:按下快捷键,隐藏的是聊天窗口而不是桌面图标

症状是:按了 ⌥⌘H,微信或者其他聊天工具的窗口消失了,桌面图标纹丝不动。

原因是 macOS 的 Services 快捷键会被当前前台 App 拦截⌥⌘H 这个组合在很多 App 里是「隐藏窗口」的内置快捷键,系统的 Service 根本没机会执行。

解决方法:换一个冷门的组合键,加上 ControlShift 变成三键组合:

  • ⌥⌘⌃H(隐藏图标)
  • ⌥⌘⌃S(显示图标)

三键组合被 App 内部占用的概率极低,稳定很多。

问题二:执行报 permission denied

症状是弹出错误提示:

操作"运行 Shell 脚本"遇到了错误:
zsh:1: permission denied: /Users/xxx/scripts/hide-desktop.sh

原因很直接:脚本文件没有执行权限。在终端跑一下这两行就解决了:

chmod +x ~/scripts/hide-desktop.sh
chmod +x ~/scripts/show-desktop.sh

如果想验证权限是否生效,用 ls -la 检查:

ls -la ~/scripts/

输出里文件权限位显示 -rwxr-xr-x,有 x 就代表可执行,没问题了。

如果文件根本不存在(路径报错),说明之前的创建步骤没有完整执行,重新跑一遍第一步的完整脚本,创建和授权一次性完成。


推荐另外方法:换用 Alfred 或直接用终端别名

用 Alfred(最简单)

如果你装了 Alfred,直接建两个 Workflow,触发 shell 脚本,用 Alfred 的快捷键唤出后输入关键词执行,完全不存在被 App 拦截的问题。

推荐另外方法:用终端别名(开发者最顺手)

~/.zshrc 加两行:

# 隐藏/显示桌面图标
alias hd="defaults write com.apple.finder CreateDesktop false && killall Finder"
alias sd="defaults write com.apple.finder CreateDesktop true && killall Finder"

执行 source ~/.zshrc 后,终端里直接输 hdsd 回车,比快捷键还快。


但我更推荐另一个思路

说实话,用了一段时间之后,我觉得最干净的方式不是「隐藏图标」,而是从源头上让桌面变得不需要放东西

macOS 的桌面本质上只是 ~/Desktop 这个文件夹的图形化显示。如果你养成了把文件放进 Finder 文件夹而不是直接扔在桌面上的习惯,两个桌面天然就都是干净的,根本不需要任何脚本。

推荐的做法是:

  • 工作文件全放在 ~/Documents 下,按项目分好子文件夹
  • Finder 侧边栏把常用文件夹都 pin 好,访问速度一样快
  • 桌面只用来临时放「今天要处理的文件」,处理完立刻归档

这个习惯养成之后,录屏桌面的问题就彻底消失了——因为桌面本来就没东西。


几个让多桌面更好用的设置

用多桌面有个最烦的问题:桌面会自动重新排序。你好不容易记住桌面 2 是干净的录屏桌面,过几天它跑到桌面 1 去了。

关掉这个:系统设置 → 桌面与程序坞 → 根据最近使用情况自动重新排列 Spaces,取消勾选。

另外,让 App 固定在某个桌面也很有用:Dock 上右键 App 图标 → 选项 → 分配到「此桌面」。这样 Xcode 永远在桌面 1,录屏工具永远在桌面 2,切换的时候不会乱。

录屏前还可以顺手做几件事:

  • Option + Command + D 隐藏 Dock
  • 控制中心开启「请勿打扰」,屏蔽通知弹窗
  • 把浏览器书签栏也收起来

这几步加起来,录出的画面会干净一大截。


macOS 的 Spaces 功能本身并不复杂,真正的价值在于把工作状态和展示状态彻底隔离。一个桌面随意生长,一个桌面一尘不染。

就像练字时的书房和待客时的厅堂,各有其用,不必强求统一。

从今天起,先新建一个专属的录屏桌面,然后认真考虑一件事:你桌面上的那些文件,哪些是真的需要放在那里的?


2026.03.12 23:09
沪 · 赵巷

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容