要让mac应用彻底从command+tab中消失,需将其标记为辅助性应用:可通过修改info.plist添加lsuielement=1、用applescript临时隐藏运行中进程,或通过defaults命令写入bundle id级系统配置。

你想让某个Mac应用(比如Stats、Rectangle或后台工具类软件)彻底从Command+Tab切换列表中消失,避免它干扰你快速切换前台应用的节奏——这需要修改应用的底层行为标识,而非简单隐藏窗口或关闭Dock图标。
通过Info.plist注入LSUIElement标识
该方法将应用标记为“辅助性应用”(UI Element),使其不参与GUI应用生命周期管理,Command+Tab、Dock、菜单栏均不可见,适用于真正需要隐身运行的工具类程序。
1、打开“访达”,进入“应用程序”文件夹。
2、右键点击目标App(例如“Stats.app”),选择“显示包内容”。
3、进入Contents子目录,找到Info.plist文件;若双击无法用文本编辑打开,说明是二进制格式——【必须先在终端执行plutil -convert xml1 Info.plist,否则后续编辑会失败】。
4、用“文本编辑”或Xcode打开Info.plist,在
5、保存文件,关闭编辑器;确保该应用已完全退出(检查活动监视器中无残留进程)。
6、重新启动该应用,此时它既不会出现在Dock,也不会响应Command+Tab,菜单栏图标若存在则仍保留(这是正常行为)。
用终端命令临时隐藏当前运行中的App
此方法不修改应用本身,仅对正在运行的实例生效,适合测试或临时规避,重启后失效。
1、打开“终端”,输入以下命令并回车:
osascript -e 'tell application "Dock" to activate' -e 'tell application "Finder" to set visible of process "微信" to false'
2、把命令中的“微信”替换成你实际要隐藏的应用名称(需与活动监视器中显示的进程名完全一致,区分大小写)。
3、执行后该App窗口立即隐藏,且不再出现在Command+Tab列表中;但它的进程仍在后台运行,所有功能照常工作。
4、如需恢复显示,在终端执行相同命令,把false改为true即可。
通过defaults写入系统级隐藏规则
该方式绕过GUI限制,直接向系统注册应用为“非激活型”,效果与LSUIElement接近,但无需修改App包内容,适合无法访问Info.plist权限的场景(如系统预装App)。
方法一:针对单个应用启用隐藏模式
1、打开终端,执行命令(将WeChat替换为实际Bundle ID):
defaults write com.tencent.xin LSUIElement -bool true
2、强制重启该应用的偏好设置服务:
killall cfprefsd
3、完全退出并重开目标App,Command+Tab中即不再出现。
方法二:批量禁用多个App的切换入口
1、在终端中依次执行(每行一个App):
defaults write com.apple.Safari LSUIElement -bool true
defaults write com.microsoft.edgemac LSUIElement -bool true
2、执行完全部命令后,运行killall cfprefsd刷新配置。
3、注意:此操作仅影响Command+Tab和Dock,不影响通知中心、聚焦搜索或Spotlight中调用该App。











