AB Download Manager 使用指南:多线程下载从安装到配置
【免费下载链接】ab-download-managerA Download Manager that speeds up your downloads项目地址: https://gitcode.com/GitHub_Trending/ab/ab-download-manager
你想下一个 10GB 的大文件,浏览器却只开一条连接,网络一断就得从头再来。AB Download Manager 是一个免费开源的桌面下载管理器:把大文件拆成多条连接并行下载,文件完成后按扩展名自动归档到 6 个分类,断线后从中断处继续,不用重下已完成的流量。
项目速览
- ⚡ 开源免费的桌面下载管理器,目前支持 Windows 和 Linux 两个平台
- 📂 一个文件拆成多个分块并行下载,默认 8 线程,上限 256 线程
- ⏰ 支持多个下载队列和定时调度,可指定星期几与起止时间
- 🌐 提供浏览器扩展,在网页里右键链接就能把任务丢进队列
装好它
Windows(winget,推荐):
winget install amir1376.ABDownloadManager在 PowerShell 里执行,winget 会完成下载、安装和开始菜单注册。
Windows(scoop):
scoop install extras/abdownloadmanager如果你已经用 scoop 管理软件,装完同样可以直接从开始菜单启动。
Linux:
bash <(curl -fsSL https://gitcode.com/GitHub_Trending/ab/ab-download-manager/raw/master/scripts/install.sh)脚本把程序装到~/.local/并写入桌面快捷方式(scripts/install.sh),装完在应用菜单搜索应用名,或在终端执行ABDownloadManager验证,日志在/tmp/ab-dm-installer.log。
源码编译:需要改代码再打包的话,clone 仓库(https://gitcode.com/GitHub_Trending/ab/ab-download-manager)并安装好 JDK/JBR 后,执行./gradlew createReleaseDistributable即可。
核心功能实操
按扩展名自动分类,下载目录不再堆成一锅粥
它能帮你在下载前就不用手动挑保存位置,文件落盘后直接进对应分类的文件夹。
- 在 设置 → 下载引擎 里确认默认下载目录
- 添加任意链接,下载完成后文件按扩展名进入 Videos、Music、Pictures、Documents、Programs、Compressed 六个子目录之一
- 回首页,点左侧分类名即可只看该类型的任务
效果:下载目录长期保持整洁,翻历史文件时按分类找就行。六个分类的扩展名映射写在 shared/app-utils 的 category 目录 里,不认识的扩展名不会命中分类。
多线程下载:把大文件拆成多块并行拉取
它把一个文件切成多个分块、用多条连接同时拉取,速度上限从单条连接变成多条之和。
- 添加下载任务
- 点开任务进入详情页,能看到每个分块独立的进度条和状态
- 线程数默认 8,在 设置 → 下载引擎 里调整,可设 1~256
效果:文件越大、网络越好,并行和单连接的差距越明显。
断点续传:网络断了、电脑重启了都能接着下
它把每个分块已完成的字节数持久化到本地,恢复时只补下未完成的部分。
- 下载中断后重新打开应用,任务还在列表里
- 点击任务选择继续,已完成分块直接跳过
- 分块状态保存在 db 包的本地存储里,引擎代码在 downloader/core 目录
效果:几 GB 的文件下到 95% 断网,重连后几分钟就能收尾。
进阶玩法
限速配置:给其他应用留出带宽
设置 → 下载引擎 里有全局速度限制,默认 0 表示不限速。
- 白天办公时设一个上限(比你的会议、语音占掉的带宽小一点),晚上改回 0 全速跑
- 同时下多个任务时,先确认线程数没被拉太高——默认 8 通常是平衡点,再往上速度可能不涨反降
队列与定时:把批量任务排到闲时
应用内置一个不可删除的 Main 队列,其余队列可以随意增删,每个队列能单独设调度:星期几 + 开始时间 + 结束时间。
- 把急用的任务放 Main 队列,几十个批量文件放进单独队列
- 批量队列的调度设为凌晨 2 点开始、不填结束时间,就能整夜下载、早上上班时刚好下完
代理与浏览器集成:扩展和批量脚本入口
代理支持四种模式:直连、跟随系统代理、手动(类型 + 地址 + 端口)、PAC 脚本。
- 开启 设置 里的浏览器集成后,网页链接右键即可加入队列;集成端口可改,避免被其他程序占用
- 它同时暴露了本地 REST 接口,定义在 REST-API.yml,写脚本可以批量提交下载任务
💡 三种入口(界面添加、浏览器右键、REST 接口)最终都进同一套队列,限速和分类规则对它们全部生效。
遇到问题时
Linux 装完在应用列表里找不到:先确认~/.local/bin在 PATH 里。安装脚本把可执行文件放在~/.local/bin/,桌面快捷方式指向同一位置;终端执行ABDownloadManager能出版本号就说明程序本身没问题,只是路径没生效。
线程加到几十,速度反而没变快:说明瓶颈不在客户端。先查服务器是否支持 Range 请求(不支持就无法真正分块并行),再把线程降回 4~8 观察;速度依旧平稳,那就是带宽或服务器侧到顶了。
浏览器扩展右键没反应:检查应用里浏览器集成开关是否打开、端口是否和扩展默认值一致。端口被占用是最常见的静默失败原因,换一个端口两边同步改即可。
给想读源码的人
| 目录 | 职责 | 一句话说明 |
|---|---|---|
desktop/app/src/main/kotlin/com/abdownloadmanager/desktop/ | 桌面界面 | Compose 页面、对话框和设置项的交互逻辑 |
downloader/core/src/main/kotlin/ir/amirab/downloader/ | 下载引擎 | 分块、续传、队列调度与本地持久化的核心 |
shared/app-utils/src/main/kotlin/com/abdownloadmanager/shared/utils/ | 共享层 | 六个内置分类、代理管理和界面工具函数 |
小结
从装完到下完第一个大文件,正常不超过 10 分钟;分类、限速、队列都在设置页里点选完成,不用碰任何配置文件。
资源:README.md | CONTRIBUTING.md
建议先装起来,挑一个你最近最想下的大文件,对比一下浏览器需要多久。
【免费下载链接】ab-download-managerA Download Manager that speeds up your downloads项目地址: https://gitcode.com/GitHub_Trending/ab/ab-download-manager
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考