Surge 使用指南:如何高效下载大文件

lxiol
📝
Surge:高性能下载工具

原文链接:https://mp.weixin.qq.com/s/l2xljKERkoRcd094r88PMw

Surge:高性能下载工具。

相信大家都有下载大文件的需求吧。由于工作的需要,我平时会到服务器上下载镜像、软件包之类的大文件,有时候下载任务一多,wget 这种命令就有点不够用了。刚好看到有人分享了一个高性能的下载工具,于是我就测试了一下。

1. 项目介绍

Surge[1] 是一个基于 Go 语言开发的高性能终端下载管理器,专为偏好键盘驱动工作流的用户设计 。它支持多连接并行、智能分块以及镜像负载均衡技术,可以大幅提升文件下载效率。

2. 快速安装

目前 Surge 最新版本为 v0.7.0,可以到 Releases 下载对应的安装包。以我安装的为例,命令如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
1
2
3
4
5
6
7
8`# 下载
wget https://github.com/surge-downloader/Surge/releases/download/v0.7.0/Surge_0.7.0_linux_amd64.tar.gz

# 解压
tar -xf Surge_0.7.0_linux_amd64.tar.gz

# 将工具放到 PATH
mv surge /usr/local/sbin/`

安装完成后,可以查看 Surge 的版本:

1
2
3
1
2`[root@localhost ~]# surge --version
Surge v0.7.0`

3. 使用说明

接下来将介绍 Surge 的基本功能,包括:

  • 终端交互模式
  • 服务器模式
  • 浏览器插件

3.1 终端交互模式

Surge 中最常用的就是终端交互模式。它用起来很简单,只需要输入 surge 就可以打开界面:

然后输入指令 a 来下载一个文件,在界面中填写 URL、镜像地址(如果有的话):

下载过程中可以看到进度、速度以及日志:

如果需要批量下载文件,可以在命令后添加多个地址:

1
1`surge https://example.com/file1.zip https://example.com/file2.zip`

也可以通过文本来下载:

1
1`surge --batch urls.txt`

3.2 服务器模式

Surge 中还有一个服务器模式。当启动该模式后,服务默认会监听在 1700 端口,可供其它服务器远程访问。

启动服务器模式也很简单,命令如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
1
2
3
4
5
6
7
8`# 启动服务器模式 
surge server

# 使用其它端口
surge server --port 8080

# 使用指定 API token 启动服务器  
surge server --token <token>`

当服务启动后,其它服务器可以通过以下命令远程连接:

1
2
3
1
2`# 修改 host 和 token
surge connect 192.168.1.10:1700 --token <token>`

3.3 浏览器插件

有意思的是,Surge 还提供了 Chrome 和 Firefox 浏览器扩展,能够拦截浏览器下载并自动转发到 Surge 服务上。

首先到 Releases 中下载并安装插件,我用的是 Chrome 浏览器,这里就下载 extension-chrome.zip,安装后界面如下:

填写主机地址和 Token。如果信息无误,插件会处于“已连接”的状态:

记得要打开 Intercept Downloads 选项。这里我从浏览器下载了 Node.js,就成功转到服务器上了:

1
2
3
4
5
6
7
8
1
2
3
4`[root@localost ~]# surge ls
ID        FILENAME                   STATUS     PROGRESS  SPEED      SIZE
--        --------                   ------     --------  -----      -
---
905c2f47  node-v24.14.0-linux-x6...  completed  100.0%    14.3 MB/s  31 MB`

4. 性能测试

虽然 Surge 的界面很漂亮,用起来也简单,但是它在下载大文件时的表现如何呢?如果它的下载速度和 wget 差不多,那就没什么意义了。

我找到了官方的 Benchmarks。相较于其它工具,Sruge 的下载速度还是很有优势的:

可以看到,Surge 的速度居然是 wget 的两倍。为了验证,我写了一个简易的脚本,用来对比两者的速度:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20`#!/bin/bash  
URL="https://ash-speed.hetzner.com/1GB.bin"
ITERATIONS=3

echo"=== Surge vs wget 速度测试 ==="

for i in $(seq 1 $ITERATIONS); do
    echo"第 $i 次测试:"

    # Surge 测试  
    echo -n "Surge: "
    time surge server $URL --output ./test --exit-when-done

    # wget 测试  
    echo -n "wget: "
    time wget -O ./test/file-wget.bin $URL

    # 清理  
    rm -f ./test/*
done`

以下是我的测试结果:

工具

第一次耗时

第二次耗时

第三次耗时

surge

1m38.259s

1m34.089s

1m36.111s

wget

2m44.012s

2m48.608s

2m39.925s

从数据来看,虽然没有两倍那么夸张,但是 Surge 的效率明显更胜一筹。

5. 写在最后

Surge 作为一款高性能的下载工具,很适合用来下载一些大体积文件。它的安装和使用都比较简单,由于是跨平台的,所以在 Windows、Linux 以及 macOS 上都运行。实际测试下来,Surge 的性能表现也很不错,我很推荐大家来试试。

References

[1] Surge:https://github.com/surge-downloader/Surge

本文转载自微信公众号,如有侵权请联系删除。

  • 标题: Surge 使用指南:如何高效下载大文件
  • 作者: lxiol
  • 创建于 : 2026-04-17 15:20:08
  • 更新于 : 2026-05-12 16:47:34
  • 链接: https://blog.lxiol.cn/2026/04/17/Surge-使用指南如何高效下载大文件/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。