AppleScript设置Terminal的ShowActiveProcessArgumentsInTitle时报错
错误产生原因
- 属性名匹配错误:你要修改的
ShowActiveProcessArgumentsInTitle(标题栏显示活动进程参数)配置项,对应的AppleScript可访问属性根本不是title displays file name,后者对应的是「标题栏显示当前目录文件名」的配置,和目标配置完全无关。 - 对象引用写法错误:你先提取所有配置文件的名称字符串,再通过名称字符串查找
settings set对象的写法,在新版macOS的Terminal中兼容性很差,尤其是你报错里提到的"Grass"这类自定义配置文件,会出现无法识别对象的报错。
正确配置实现方案
直接遍历Terminal的所有配置对象(不需要通过名称二次查找),把对应进程参数显示的属性设为false即可,完整可运行代码如下:
tell application "Terminal" repeat with targetProfile in every settings set -- title displays command arguments 就是对应ShowActiveProcessArgumentsInTitle的属性 set title displays command arguments of targetProfile to false end repeat end tell
如果运行时弹出权限申请弹窗,在「系统设置 > 隐私与安全性」中给运行脚本的工具(脚本编辑器/终端)开启自动化、辅助功能权限后再重新运行即可。
运行完成后重启Terminal,所有配置文件的「标题栏显示活动进程参数」选项就会被统一关闭。
内容的提问来源于stack exchange,提问作者jredfox_
相关产品推荐
相关产品推荐

