mac下载文件夹中长期堆积的.dmg/.pkg等安装包会占用5–20gb空间,引发系统卡顿、更新失败及低容量警告;推荐三种自动化清理方案:终端脚本(每周静默删除30天前文件)、automator一键应用(双击确认删7天前文件)、applescript安全应用(仅移入废纸篓且跳过锁定/隐藏文件)。

Mac下载文件夹里的安装包长期堆积会悄悄吃掉5–20GB空间,导致系统变卡、更新失败、可用容量跌破10%触发警告;这些.dmg/.pkg文件多数已完成安装或早已失效,但手动翻找效率低、易漏删、常误删正在使用的挂载镜像——必须用自动化机制在不干扰日常操作的前提下,定期识别并安全清除。
用终端脚本实现每周自动清理
这一步绕过图形界面,直击文件系统,适合希望完全静默运行、无需点击确认的用户。脚本可精准控制时间阈值与文件类型,且不经过废纸篓,释放空间更彻底。
第一步:打开终端 → 输入以下命令创建脚本文件:
touch ~/Documents/clean_downloads.sh
第二步:用nano编辑器写入内容:
nano ~/Documents/clean_downloads.sh
第三步:粘贴以下代码(注意保留换行与引号):
#!/bin/bash
find ~/Downloads -maxdepth 1 \( -name "*.dmg" -o -name "*.pkg" -o -name "*.zip" \) -mtime +30 -delete
第四步:赋予执行权限:
chmod +x ~/Documents/clean_downloads.sh
第五步:设置为每周一上午9点自动运行:
crontab -e
输入:0 9 * * 1 /Users/$(whoami)/Documents/clean_downloads.sh
【执行前务必确认当前用户主目录路径无空格或中文,否则cron可能无法正确解析路径】
用Automator制作一键清理快捷方式
适合不想接触终端、但又希望比手动删除更快更可控的用户。这个方案生成一个双击即运行的App,所有操作都在访达界面内完成,删除前会弹窗确认,安全性更高。
方法一:新建“快速操作”流程
打开Automator → 新建文档 → 选择“快速操作” → 点击“文件夹”右侧下拉菜单,选“访达” → 在左侧“资源库”中拖入“运行Shell脚本” → 在脚本框中粘贴:
find "$1" -maxdepth 1 \( -name "*.dmg" -o -name "*.pkg" \) -mtime +7 -delete
方法二:保存为应用并添加到程序坞
顶部菜单栏 → 文件 → 存储 → 命名为“一键清安装包” → 格式选“应用程序” → 保存到“应用程序”文件夹 → 右键该App → “显示简介” → 勾选“始终允许” → 拖入程序坞。
以后只需双击图标,它会自动扫描下载文件夹,只删7天前的.dmg/.pkg,跳过正在挂载的镜像(因挂载状态会使find命令自动跳过),【若某.dmg旁有蓝色卷标图标,请先在访达侧边栏右键→“推出”,再运行此App】。
用AppleScript自动识别并移入废纸篓
这是唯一能在图形界面下模拟人工判断逻辑的自动化方案:它只处理未被锁定、非隐藏、非系统保护的安装包,且全程走废纸篓路径,误删可恢复,兼顾安全与效率。
打开“脚本编辑器”应用 → 粘贴以下代码:
set downloadsFolder to path to downloads folder
set installers to (files of downloadsFolder whose name extension is in {"dmg", "pkg", "zip"})
repeat with f in installers
if (locked of f is false) and (visible of f is true) then
move f to trash
end if
end repeat
点击左上角“编译”按钮确认语法无误 → 顶部菜单栏 → 文件 → 存储 → 格式选“应用程序” → 命名为“安全清安装包” → 保存。
运行时,它会逐个检查每个.dmg/.pkg是否被锁定或隐藏,跳过所有异常状态文件,只把干净的安装包拖进废纸篓。这比直接rm -f更稳妥,尤其适合共享Mac或新手用户。











