wget · 网络搬运工
上游:apt(先知道软件管理,再了解手动下载)· ls(确认下载到哪里) 下游:unzip(下载 .zip 后解压)· tar(下载 .tar.gz 后解包)· find(找到下载的文件) 参见:curl(wget 的兄弟,功能不同,各有擅长)
一句话是什么
wget 从互联网下载文件到你的电脑——给它一个网址,
它去帮你把文件搬回来,不需要打开浏览器。
为什么需要它
在 Linux 服务器上没有浏览器,下载文件只能用命令行。 即使有浏览器,用命令行下载更快,而且可以自动化。
# Windows/Mac 方式:打开浏览器 → 找下载链接 → 点击 → 等待
# Linux 方式:
wget https://www.minecraft.net/en-us/download/server/bedrock真实场景:
- 下载 Minecraft Bedrock Server(从官网获取直接链接)
- 下载某个软件的安装包(不在 apt 仓库里的)
- 批量下载一系列文件
- 在没有桌面的服务器上下载文件
核心用法
公式
wget [选项] 网址
常用命令表
| 操作 | 命令 | 说明 |
|---|---|---|
| 直接下载 | wget 网址 | 下载到当前目录,文件名自动取 |
| 指定文件名 | wget -O 文件名 网址 | 保存为你指定的名字 |
| 断点续传 | wget -c 网址 | 下载中断后继续(不重头来) |
| 后台下载 | wget -b 网址 | 挂后台,不占用终端 |
| 限速下载 | wget --limit-rate=1M 网址 | 限制 1MB/s,不占满带宽 |
| 下载到指定目录 | wget -P ~/Downloads/ 网址 | 保存到 Downloads |
| 查看进度 | wget -q --show-progress 网址 | 安静模式但显示进度条 |
Linux 笑话
Aaron 想下载 Minecraft Bedrock Server,爸爸说: “找到下载链接,用 wget 下载。”
Aaron 去官网,右键点击下载按钮,复制链接, 然后跑回终端:
wget https://minecraft.azureedge.net/bin-linux/bedrock-server-1.21.0.01.zip满屏数字开始滚动:
Connecting to minecraft.azureedge.net... connected.
HTTP request sent, awaiting response... 200 OK
Length: 150234567 (143M) [application/zip]
Saving to: 'bedrock-server-1.21.0.01.zip'
bedrock-server-1.21.0.01.zip
15% [====> ] 22.1M 5.00MB/s eta 24s
Aaron 盯着进度条,第一次感觉到: “命令行下载比浏览器下载更有掌控感。”
数字一直在动,他知道发生了什么,而不是浏览器那个转圈圈。
例题精讲
📗 初探 Starter — 下载一个小文件练手
任务:下载 Ubuntu 官方的一个测试文件,练习 wget 的基本用法。
# 第一步:确认 wget 有没有安装
which wget
# 如果没有:
sudo apt install wget
# 第二步:下载一个小文件(Ubuntu 的 README)
wget http://archive.ubuntu.com/ubuntu/README
# 第三步:看看下载到哪里了
ls -la README
# 第四步:看看里面是什么
cat README
# 第五步:指定文件名重新下载
wget -O ubuntu-readme.txt http://archive.ubuntu.com/ubuntu/README
ls -la ubuntu-readme.txt你学到了什么:wget 网址 最简单用法,-O 改文件名。
下载的文件保存在当前目录(你 pwd 的位置)。
📘 应用 User — 断点续传下载大文件
任务:模拟下载大文件,中途中断,然后续传。
# 下载一个大文件(Linux 内核,约 120MB,仅练习用)
wget https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.6.tar.xz
# 如果下载中途 Ctrl+C 中断了,不要重新下载
# 用 -c 续传
wget -c https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.6.tar.xz
# wget 会检测已下载的部分,从断点继续
# 输出:
# Continuing in background, pid 1234.
# File 'linux-6.6.tar.xz' already there; not retrieving.
# 或者显示从多少字节开始继续你学到了什么:-c(continue)是下载大文件的救命选项。
网络不稳定时,下到一半断了不用哭,-c 续传就好。
📙 管理 Admin — 定期自动下载更新包
任务:写一个简单命令,检查并下载最新的 Minecraft 服务器版本。
# 先确认服务器版本文件位置(从 Minecraft 官网获取直接链接)
# 注意:Minecraft 的下载链接会变化,以下为示意
# 下载最新版(覆盖旧版)
wget -O ~/Downloads/bedrock-server-latest.zip \
"https://minecraft.azureedge.net/bin-linux/bedrock-server-1.21.0.01.zip"
# 下载完验证文件大小
ls -lh ~/Downloads/bedrock-server-latest.zip
# 配合 md5sum 验证完整性(如果官网提供校验码)
md5sum ~/Downloads/bedrock-server-latest.zip你学到了什么:
-O固定文件名(每次下载都叫bedrock-server-latest.zip,不会堆积多个版本)- 下载后用
ls -lh确认文件大小合理(太小 = 下载失败) - 真实环境里 Minecraft 链接需要从官网获取,会定期更新
官方文档参考
man wget # 完整手册
wget --help # 快速选项列表GNU Wget 支持 HTTP/HTTPS/FTP,non-interactive,适合脚本和服务器环境。 在线:
https://www.gnu.org/software/wget/manual/wget.html
节点链接
上游(先了解这些)
同层(wget 的兄弟)
- curl ← curl 和 wget 都能下载,curl 更灵活,wget 更简单 ← 规律:下文件用 wget,API 请求用 curl
下游(下载完之后)
实战
- Minecraft-Bedrock-Server ← 下载 BDS 安装包的核心工具