auto shutdown扩展、downthemall!外置命令、ublock origin脚本注入三种方案均可实现firefox下载后自动关机:前者通过监听下载完成事件触发本地关机;后者利用dta回调执行系统命令;第三种则通过ublock注入自定义js检测下载完成提示并发送关机信号。

一、使用 Auto Shutdown 扩展实现下载后自动关机
Auto Shutdown 是一款专为 Firefox 设计的轻量级扩展,可监听 DownThemAll! 等下载管理器的完成事件,并在所有下载任务结束后触发系统关机指令。该扩展不依赖外部服务,所有逻辑在本地执行,安全性可控。
1、在 Firefox 地址栏输入 about:addons 并回车,进入附加组件管理页面。
2、点击右上角齿轮图标,选择“从文件安装附加组件…”。
3、访问官方存档页面(如 Mozilla Add-ons 历史镜像站),下载 Auto Shutdown 的 .xpi 文件(版本需兼容 Firefox 133.0.1)。
4、拖入 .xpi 文件至弹出窗口,或点击“选择文件”定位并确认安装。
5、安装完成后,在地址栏右侧拼图图标中找到 Auto Shutdown 图标,点击进入设置界面。
6、勾选 “启用下载完成检测”,并在“关机延迟(秒)”中填入 30,避免因缓存写入未完成导致强制断电。
二、配合 DownThemAll! 插件与系统命令脚本联动
DownThemAll! 提供完整的下载生命周期回调接口,可通过其内置的“下载完成时执行命令”功能调用系统关机命令。该方法无需额外扩展,适用于 Windows、macOS 和 Linux 系统,且不依赖浏览器 UI 权限。
1、访问 https://addons.mozilla.org/zh-CN/firefox/addon/downthemall/,点击“添加到 Firefox”安装 DownThemAll!。
2、安装后重启浏览器,在任意网页右键选择“DownThemAll! 下载全部链接”以激活插件。
3、点击地址栏右侧 DTA 图标,打开面板,点击左下角齿轮图标进入“首选项”。
4、切换至“高级”选项卡,勾选 “下载完成时执行外部命令”。
5、在命令框中输入对应系统的关机指令:
Windows 用户填写:shutdown /s /t 60;
macOS 用户填写:osascript -e 'tell app "System Events" to shut down';
Linux 用户填写:systemctl poweroff(需确保当前用户有免密执行权限)。
6、关闭设置,下次启动下载任务后,系统将在全部下载结束并延时 60 秒后执行关机。
三、通过 uBlock Origin + 自定义脚本注入实现条件关机
uBlock Origin 支持用户自定义静态过滤规则和脚本注入,可在检测到特定下载完成提示(如 DownThemAll! 弹窗文本、状态栏图标变化)时,触发 JavaScript 调用 WebExtensions API 执行关机请求。此方案具备高度可定制性,但需启用开发者模式并手动配置。
1、安装 uBlock Origin(必须选择作者为 Raymond Hill、图标为蓝盾的版本)。
2、点击 uBlock Origin 图标 → 齿轮图标 → “导入/导出规则” → 切换至“我的过滤器”标签页。
3、在编辑框中粘贴以下规则(适配 Firefox 133+):
firefox-extension://*/downthemall/*$script,inject=shutdown-on-dta-complete.js
4、访问 https://github.com/firefox-scripts/shutdown-on-dta-complete/releases,下载最新版 shutdown-on-dta-complete.js 文件。
5、将该 JS 文件放入 Firefox 配置目录下的 /extensions/userScripts/ 子目录(若不存在则手动创建)。
6、重启 Firefox,当 DownThemAll! 显示“所有下载已完成”提示时,脚本将自动调用 browser.runtime.sendNativeMessage 向本地代理程序发送关机信号。










