Linux wget命令

一、wget命令

wget命令用来从指定的URL下载文件。wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。

1.1 语法

wget(选项)(参数)

1.2 选项

选项描述
-a<日志文件>在指定的日志文件中记录资料的执行过程;
-A<后缀名>指定要下载文件的后缀名,多个后缀名之间使用逗号进行分隔;
-b进行后台的方式运行wget;
-B<连接地址>设置参考的连接地址的基地地址;
-c继续执行上次终端的任务;
-C<标志>设置服务器数据块功能标志on为激活,off为关闭,默认值为on;
-d调试模式运行指令;
-D<域名列表>设置顺着的域名列表,域名之间用“,”分隔;
-e<指令>作为文件“.wgetrc”中的一部分执行指定的指令;
-h显示指令帮助信息;
-i<文件>从指定文件获取要下载的URL地址;
-l<目录列表>设置顺着的目录列表,多个目录用“,”分隔;
-L仅顺着关联的连接;
-r递归下载方式;
-nc文件存在时,下载文件不覆盖原有文件;
-nv下载时只显示更新和出错信息,不显示指令的详细执行过程;
-q不显示指令执行过程;
-nh不查询主机名称;
-v显示详细执行过程;
-V显示版本信息;
–passive-ftp使用被动模式PASV连接FTP服务器;
–follow-ftp从HTML文件中下载FTP连接文件。

1.3 参数

URL:指定要下载文件的URL地址
二、示列
wget http://test.com/testfile.zip ->下载指定文件到当前文件夹
wget -O wordpress.zip http://test.com/download ->指定保存名字
wget --limit-rate=300k http://www.linuxde.net/testfile.zip ->限制下载速度
wget -c http://www.linuxde.net/testfile.zip ->断点续传
wget -b http://www.linuxde.net/testfile.zip ->后台下载

# 设置使用指定浏览器下载(伪装下载)
wget --user-agent="Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.204 Safari/534.16" http://www.linuxde.net/testfile.zip

wget --spider url ->测试下载
wget --tries=40 URL ->设置重试次数为40
wget -i filelist.txt ->从filelist.txt获取下载地址

# 镜像网站
# --miror开户镜像下载。
# -p下载所有为了html页面显示正常的文件。
# --convert-links下载后,转换成本地的链接。
# -P ./LOCAL保存所有文件和目录到本地指定目录
wget --mirror -p --convert-links -P ./LOCAL URL

wget --reject=gif ur ->下载一个网站,但你不希望下载图片,可以使用这条命令
wget -o download.log URL ->把下载信息存入日志文件
wget -Q5m -i filelist.txt ->限制总下载文件大小
wget -r -A.pdf url ->下载指定格式文件

# FTP下载
wget ftp-url
wget --ftp-user=USERNAME --ftp-password=PASSWORD url
<think>好的,我现在需要帮用户介绍一下wget命令。用户之前问过如何用wget下载文件时重命名,现在可能想深入了解wget的更多功能。首先,我需要确保覆盖wget的基本用法、常用参数、实际应用场景以及注意事项。 用户可能是开发者或者系统管理员,经常需要从命令行下载文件,尤其是在自动化脚本中。他们可能对wget的一些高级功能感兴趣,比如递归下载、限速、断点续传等。同时,考虑到他们之前的问题,可能对文件管理和重命名有特别需求,需要详细说明相关参数,比如-O选项。 接下来,我需要组织信息结构。从基本介绍开始,然后分点讲解参数,每个参数给出示例,这样用户容易理解。然后列举常见应用场景,帮助用户将命令与实际使用结合起来。注意事项部分要提醒用户可能遇到的覆盖文件、法律问题等,这样更全面。 还要注意用户提到的之前的问题,所以在参数部分要强调-O的使用,可能还需要提到其他相关参数如-N、-nc,这些和文件命名及下载控制有关。另外,用户可能需要知道如何后台运行、如何模拟浏览器,这些在爬取数据时很有用。 需要检查是否有遗漏的重要参数,比如限速、重试次数、日志记录等。同时,确保示例准确,比如递归下载整个网站可能需要谨慎,避免侵犯版权,所以注意事项里要提到法律问题。 最后,总结部分要简明扼要,突出wget的优势,让用户明确它的适用场景。确保使用中文,避免技术术语过于晦涩,保持口语化但专业。可能还需要校对格式,确保代码块正确,参数用反引号标出,整体结构清晰易读。</think>以下是对 `wget` 命令的详细介绍,内容涵盖基本用法、常用参数、典型场景和注意事项: --- ### **1. 基本介绍** `wget` 是 Linux/Unix 系统中基于命令行的非交互式文件下载工具,支持 HTTP、HTTPS 和 FTP 协议。其特点是: - **无需用户干预**:可后台运行或通过脚本自动化 - **断点续传**:网络中断后可从断开处继续下载 - **递归下载**:支持批量抓取网页或目录内容 --- ### **2. 常用参数** | 参数 | 功能描述 | 示例 | |------|----------|------| | `-O <文件名>` | 指定下载文件的保存名称 | `wget -O data.zip http://example.com/file` | | `-c` | 断点续传(恢复未完成的下载) | `wget -c http://example.com/large.iso` | | `-r` | 递归下载整个网站/目录 | `wget -r http://example.com/` | | `-np` | 禁止递归到父目录(配合 `-r` 使用) | `wget -r -np http://example.com/subdir/` | | `-nd` | 不保留远程目录结构(所有文件保存到当前目录) | `wget -r -nd http://example.com/files/` | | `-P <目录>` | 指定文件保存路径 | `wget -P /home/user/downloads/ http://example.com/file` | | `-q` | 静默模式(不显示下载进度) | `wget -q http://example.com/background-file` | | `-i <文件>` | 从文件读取多个 URL 批量下载 | `wget -i url_list.txt` | | `--limit-rate=200k` | 限制下载速度(避免占用带宽) | `wget --limit-rate=200k http://example.com/large.mp4` | | `--user-agent="..."` | 伪装浏览器 User-Agent | `wget --user-agent="Mozilla/5.0" http://example.com` | --- ### **3. 典型应用场景** #### **场景 1:下载单个文件** ```bash wget http://example.com/images/photo.jpg ``` #### **场景 2:镜像整站(备份网站)** ```bash wget -mk -np http://example.com/ ``` - `-m`:镜像模式(等效于 `-r -N -l inf`) - `-k`:转换绝对链接为本地相对链接 #### **场景 3:批量下载指定类型文件** ```bash wget -r -A.pdf http://example.com/documents/ ``` - `-A.pdf`:仅下载 PDF 文件 - `-R.jpg`:排除 JPG 文件 #### **场景 4:后台下载** ```bash wget -b -o download.log http://example.com/large-file.iso ``` - `-b`:后台运行 - `-o`:将输出写入日志文件 --- ### **4. 注意事项** 1. **覆盖文件风险**: 默认会覆盖同名文件,建议添加 `-nc`(不重复下载)或 `-N`(仅下载新版本)参数: ```bash wget -nc http://example.com/version.txt ``` 2. **证书验证问题**: 若 HTTPS 站点证书不受信任,可添加 `--no-check-certificate`(需谨慎使用): ```bash wget --no-check-certificate https://untrusted-site.com/file ``` 3. **递归下载深度控制**: 通过 `-l` 参数限制递归层级,避免无限下载: ```bash wget -r -l 2 http://example.com/ # 仅下载两层链接 ``` 4. **法律合规性**: 禁止未经授权下载受版权保护的内容或整站爬取敏感数据。 --- ### **5. 总结** `wget` 是服务器环境下的核心下载工具,尤其适合: - 自动化脚本中的文件获取 - 无图形界面环境的资源下载 - 大规模数据抓取与备份 通过灵活组合参数,可实现从简单下载到复杂批量任务的完整解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

书香水墨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值