首页 > 运维 > linux运维 > 正文

Linux 怎么批量下载文件?wget/curl 教程

舞夢輝影
发布: 2025-12-05 22:13:02
原创
872人浏览过
wget更适合批量下载,支持-i参数读取URL列表并提供断点续传、重试等选项;curl需配合shell脚本实现批量下载,灵活性高但配置更复杂。

linux 怎么批量下载文件?wget/curl 教程

在 Linux 中批量下载文件,wgetcurl 是最常用的命令行工具。虽然两者都能完成下载任务,但在批量操作上,wget 更适合简单场景,而 curl 功能更灵活但需要配合脚本使用。

1. 使用 wget 批量下载(推荐)

wget 支持从文件中读取 URL 列表,非常适合批量下载。

方法一:用 -i 参数从文件读取 URL

创建一个文本文件,每行一个下载链接:
https://example.com/file1.zip
https://example.com/file2.zip
https://example.com/file3.zip
登录后复制
执行命令:
wget -i urls.txt
登录后复制
这样会依次下载所有文件。

常用选项:

  • -c:断点续传,网络中断后可继续下载
  • -t 3:失败时重试 3 次
  • -nv:非详细模式,减少输出信息
  • -P /path/to/dir:指定保存目录
例如:
wget -c -t 3 -nv -P ./downloads -i urls.txt
登录后复制

方法二:用 shell 循环批量下载

如果 URL 有规律,可以直接用 for 循环:
for i in {1..10}; do
  wget https://example.com/file$i.zip
done
登录后复制

2. 使用 curl 批量下载

curl 不像 wget 支持 -i 参数直接读文件,但可以结合 shell 脚本实现。

方法一:用 while 读取文件中的 URL

Winston AI
Winston AI

强大的AI内容检测解决方案

Winston AI 138
查看详情 Winston AI
while read url; do
  curl -O "$url"
done < urls.txt
登录后复制
注意:-O 表示使用远程文件名保存。

方法二:配合 seq 或花括号批量请求

适用于编号连续的文件:
for i in {1..5}; do
  curl -O https://example.com/image$i.jpg
done
登录后复制

curl 小技巧:

  • -#:显示进度条
  • -L:跟随重定向
  • --fail:出错时不输出 HTML 错误页
  • -o filename:自定义保存名(支持变量)
例如按序号命名:
for i in {1..3}; do
  curl -# -L -o "file$i.zip" "https://example.com/file$i.zip"
done
登录后复制

3. 实用建议和注意事项

避免被封 IP

大批量下载时,服务器可能限制频繁请求。可以加延迟:
for url in $(cat urls.txt); do
  wget "$url"
  sleep 1  # 每次下载后暂停 1 秒
done
登录后复制

检查链接有效性

提前测试几个链接是否能访问:
head -3 urls.txt | while read url; do
  curl -I "$url" 2>/dev/null | head -1
done
登录后复制

日志记录

把下载过程记录到日志,方便排查问题:
wget -i urls.txt >> download.log 2>&1
登录后复制

基本上就这些。wget 更适合“开箱即用”的批量下载,curl 更适合定制化场景。根据你的需求选择即可。

以上就是Linux 怎么批量下载文件?wget/curl 教程的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号