在命令行下载工具的世界里,curl 和 wget 一直是默认选择,但它们往往受限于单连接模式,无法跑满现代高速宽带。而老牌多线程神器 aria2 虽然强大,配置却略显繁琐,且缺乏现代化的交互界面。

Surge是一款专为高级用户打造的基于 Go 语言 的新一代下载管理器。它不仅拥有基于 Bubble Tea 和 Lipgloss 构建的精美 TUI(终端用户界面),更通过高达 32 个并发连接、多镜像自动故障转移和独特的守护进程架构,将下载速度推向了新的极限。
为什么选择 Surge?
1. 极致速度:榨干每一 Mbps 带宽
浏览器和传统 CLI 工具通常只建立一个 TCP 连接下载文件。Surge 则将文件分割成多个块,同时开启多达 32 个连接并行下载。
- 基准测试数据:在 360 Mbps 网络环境下下载 1GB 文件:
- Surge: 28.93 秒 (35.40 MB/s) 🏆
- aria2c: 40.04 秒 (慢 1.38 倍)
- curl: 57.57 秒 (慢 1.99 倍)
- wget: 61.81 秒 (慢 2.14 倍)
2. 智能多镜像与故障转移
如果你有多个下载源(镜像),Surge 能同时将工作线程分配给所有可用镜像。一旦某个源断开或变慢,它会自动故障转移到其他源,确保下载永不中断。
3. 顺序下载(流式模式)
对于视频或大媒体文件,Surge 支持严格按顺序下载。这意味着你可以在文件完全下载前就开始预览播放,无需等待 100% 完成。
4. 独特的守护进程架构
Surge 不仅仅是一个命令,它是一个后台服务(Daemon)。
- 集中管理:启动一个
surge server后,你可以在 10 个不同的终端标签页、甚至远程设备上添加任务,它们都会汇聚到同一个高效引擎中处理。 - 持久运行:非常适合放在服务器、树莓派或 NAS 上 7×24 小时运行。
5. 颜值即正义
基于 Bubble Tea (TUI 框架) 和 Lipgloss (样式库) 构建,Surge 提供了实时速度图表、进度条和清晰的队列管理界面,让枯燥的终端下载变得赏心悦目。
安装指南
Surge 支持全平台,安装极其简便:
| 平台 | 安装命令 |
|---|---|
| macOS / Linux (Homebrew) | brew install surge-downloader/tap/surge |
| Windows (Winget) | winget install surge-downloader.surge |
| Arch Linux (AUR) | yay -S surge |
| Go 用户 | go install github.com/surge-downloader/surge@latest |
| Docker | 使用 docker compose up -d (详见下文) |
或者直接前往 GitHub Release 页面下载预编译二进制文件。
核心用法:三种模式玩转下载
模式一:交互式 TUI(本地单机)
最简单的用法,直接运行即可看到炫酷的仪表盘:
# 启动界面
surge
# 启动并直接添加任务
surge https://example.com/file.zip https://example.com/movie.mp4
# 结合批量文件
surge --batch urls.txt
模式二:守护进程模式(服务器/后台)
这是 Surge 的杀手锏。在服务器或 NAS 上启动无头模式:
# 启动服务器(默认监听 0.0.0.0:1700)
surge server
# 获取 API 令牌(用于认证)
surge token
此时,Surge 已在后台静默运行。你可以随时从任何地方连接它。
模式三:远程连接(CLI + TUI)
在你的笔记本电脑或另一台终端上,连接到正在运行的 Surge 守护进程:
# 自动检测本地服务器
surge connect
# 连接远程服务器(如家里的 NAS)
surge connect 192.168.1.10:1700 --token <your_token>
# 或者在所有命令中使用全局标志
surge ls --host 192.168.1.10:1700 --token <your_token>
注:Surge 会自动根据 IP 类型选择 HTTP 或 HTTPS 协议。
Docker 部署:一键搭建私有下载中心
想在服务器上永久运行?Docker Compose 是最佳选择:
- 下载配置:
wget https://raw.githubusercontent.com/surge-downloader/surge/refs/heads/main/docker/compose.yml - 启动服务:
docker compose up -d - 获取令牌:
docker compose exec surge surge token - 验证运行:
docker compose exec surge surge ls
现在,你可以通过局域网内的任何设备,使用 surge connect 管理这台服务器上的下载任务。
浏览器扩展:无缝拦截
Surge 还提供了 Chrome/Edge/Firefox 扩展。安装后,当你点击浏览器中的下载链接时,它会直接拦截并发送给后台运行的 Surge 守护进程。
- 优势:利用服务器的上行带宽下载大文件,本地电脑无需挂机,下载完成后直接在服务器整理或通过内网传输取回。











评论