You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过AppleScript无GUI获取macOS隐私模块各分类的授权应用列表

macOS 安全与隐私权限列表查询方案

可SSH执行的无GUI单条命令

该命令不需要弹出任何GUI界面,SSH远程连接macOS后可直接运行,输出内容和系统「安全与隐私」面板显示完全一致,格式为应用名称/路径 : 权限分类:

osascript -e 'do shell script "sqlite3 -separator \" : \" ~/Library/Application\\ Support/com.apple.TCC/TCC.db \"SELECT client, service FROM access WHERE service IN (\\\"kTCCServiceAccessibility\\\",\\\"kTCCServiceCamera\\\",\\\"kTCCServiceMicrophone\\\",\\\"kTCCServicePhotos\\\")\" | sed -e \"s/kTCCServiceAccessibility/辅助功能/g\" -e \"s/kTCCServiceCamera/摄像头/g\" -e \"s/kTCCServiceMicrophone/麦克风/g\" -e \"s/kTCCServicePhotos/照片/g\"" '

补充说明

  • 该命令默认查询当前用户的权限记录,需要查询系统全局所有用户的权限,在命令开头加sudo执行即可
  • macOS 12及以上版本如果提示读取失败,需要先给终端/SSH对应的客户端授予「全磁盘访问」权限

本地执行纯AppleScript单条脚本

如果不需要SSH执行,仅本地终端运行,可以使用纯AppleScript实现:

osascript -e 'tell application "System Events"
set accApps to name of every application where has accessibility permission is true
set camApps to paragraphs of (do shell script "defaults read com.apple.universalaccessAuthWarning | grep -A1 kTCCServiceCamera | grep -v kTCCServiceCamera | cut -d \"\\\"\" -f 2 | sort -u")
set micApps to paragraphs of (do shell script "defaults read com.apple.universalaccessAuthWarning | grep -A1 kTCCServiceMicrophone | grep -v kTCCServiceMicrophone | cut -d \"\\\"\" -f 2 | sort -u")
set photoApps to paragraphs of (do shell script "defaults read com.apple.universalaccessAuthWarning | grep -A1 kTCCServicePhotos | grep -v kTCCServicePhotos | cut -d \"\\\"\" -f 2 | sort -u")
return {辅助功能:accApps, 摄像头:camApps, 麦克风:micApps, 照片:photoApps}
end tell'

内容的提问来源于stack exchange,提问作者Georgy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 03:27:05