macOS Shortcuts 可通过“运行脚本”操作调用 cleanmac.sh 实现自动化清理,需先赋予脚本执行权限,支持干运行、定时执行、快捷键触发及访达右键集成,但涉及 sudo 的操作须配置免密或改用非 root 清理项。

macOS Shortcuts 本身不能直接执行系统级清理(比如删缓存、清日志),但它可以安全、可控地调用终端脚本,把 cleanmac.sh 这类开源工具“接进来”,实现一键触发、自动确认、定时运行等实用场景。
如何让 Shortcuts 调用 cleanmac.sh
Shortcuts 的核心能力是“执行 shell 脚本”,前提是脚本已存在且有执行权限:
- 确保 cleanmac.sh 已下载并赋予可执行权限:
chmod +x ~/Downloads/cleanmac.sh - 在 Shortcuts 中添加“运行脚本”操作,选择“Shell 脚本”类型
- 输入完整路径和参数,例如:
/Users/yourname/Downloads/cleanmac.sh --dry-run(预览)或/Users/yourname/Downloads/cleanmac.sh -y(自动清理) - 勾选“在后台运行”,避免弹出终端窗口干扰当前工作
支持哪些清理动作能接入 Shortcuts
不是所有清理任务都适合 Shortcuts 调用,需满足“无交互、无图形界面、不依赖用户上下文”的条件:
- 基础缓存清理(
./cleanmac.sh)——默认保留7天,最稳妥 - 按天数自定义(
./cleanmac.sh 30)——适合保留开发中间产物的用户 - 干运行预览(
--dry-run)——配合“显示结果”操作,提前看到将删哪些文件 - 组合清理(如加
&& log erase --since "14 days ago")——可串联系统日志清理,但需 sudo 权限
绕过密码提示的关键设置
涉及 sudo 的操作(如清理 /var/log 或统一日志)会卡在密码输入环节。解决方法有两个:
- 为特定命令配置免密:运行
sudo visudo,添加一行yourusername ALL=(ALL) NOPASSWD: /usr/bin/log, /usr/bin/find - 改用非 root 清理项:cleanmac.sh 默认只清理用户目录(~/Library/Caches 等),无需 sudo,更安全
- 避免在 Shortcuts 中调用需要交互的命令(如带
read或ask_confirmation的脚本分支)
与自动化、快捷键联动的实际用法
Shortcuts 的价值在于“不点开 App 就能执行”,结合系统机制可做到真正省心:
- 设为“个人自动化”:选择“每天上午9点”,自动运行
cleanmac.sh -y,无需手动干预 - 绑定键盘快捷键:比如
Cmd+Opt+C,随时触发桌面缓存清理 - 从访达右键菜单调用:勾选“作为快速操作使用”,在任意文件夹里右键 → 快速操作 → “清理本目录缓存”
- 配合“快捷指令中心”模板:搜索“mac 清理”,导入现成流程,再编辑底层脚本路径即可复用


















