macOS 无官方“单窗口模式”,但可通过组合终端命令与快捷键实现近似效果:一、Command+Option+H隐藏其他应用窗口;二、AppleScript隐藏非目标进程;三、禁用调度中心与自动多桌面,并隐藏菜单栏和程序坞。

MacOS 并没有官方定义的“单窗口模式”这一系统级功能,也没有通过终端命令直接启用的、类似 iOS 单 App 模式(kiosk mode)那样的“仅显示一个窗口”的全局模式。
但根据你的意图——让当前应用只显示一个窗口、隐藏其他所有窗口,并保持专注操作——可以组合使用终端命令与系统快捷键实现接近效果。以下是最贴近“单窗口模式”逻辑的三种实用路径:
一、强制隐藏其他应用窗口(终端辅助+快捷键)
这是最常用、最可靠的“伪单窗口”操作,无需重启或修改系统配置:
- 执行以下命令可重置窗口管理状态(可选,用于排除异常):
defaults write NSGlobalDomain NSWindowShouldDragOnGesture -bool false killall Finder
- 然后用快捷键:
-
Command + Option + H:隐藏除当前应用外的所有窗口
(此时桌面干净,仅剩你正在使用的那个 App 的所有窗口可见) - 若该 App 有多个窗口,可配合 Command + `(反引号)在同应用窗口间切换
-
Command + Option + H:隐藏除当前应用外的所有窗口
二、最小化非关键窗口并锁定前台(终端+AppleScript)
若需自动化保留某特定窗口(如 Safari 主页、Notes 笔记),可用脚本实现“只留一个窗口活跃”:
-
打开终端,运行以下 AppleScript(替换
"Safari"为你想保留的应用名):osascript -e 'tell application "System Events" to set visible of every process whose visible is true and name is not "Safari" to false'
-
补充一句激活目标应用:
open -a "Safari"
⚠️ 注意:此方式依赖进程名,部分应用(如 VS Code 多窗口实例)可能需额外判断;且 macOS Sonoma 及之后对后台进程可见性限制更严格,效果因应用而异。
三、禁用调度中心与多桌面干扰(提升单窗口沉浸感)
避免误触触发多任务视图,让单窗口体验更稳定:
-
关闭调度中心手势(四指上滑):
defaults write com.apple.dock showMissionControlGestureEnabled -bool false killall Dock
-
禁用自动创建新桌面(防止拖拽窗口时意外新建空间):
defaults write com.apple.dock mru-spaces -bool false killall Dock
-
如需彻底隐藏菜单栏和程序坞(强化专注):
defaults write NSGlobalDomain _HIHideMenuBar -bool true defaults write com.apple.dock autohide -bool true killall Finder; killall Dock
以上组合操作后,你的 Mac 将呈现:
✅ 当前应用窗口完全可见
✅ 其他应用不可见、不响应点击
✅ 菜单栏/程序坞自动隐藏
✅ 不会因手势或快捷键意外切出
不复杂但容易忽略的是:真正的“单窗口模式”在 macOS 层面并不存在,它靠的是精准控制可见性 + 窗口激活策略 + 干扰项屏蔽来模拟。如果你需要的是教育/公共设备场景下的强制单应用锁定,请使用 Apple Configurator 配置“单 App 模式”,那才是系统级的受监督方案。


















