windows wget常用命令整理
wget
是一款强大的命令行工具,用于从网络下载文件。虽然它最初是为类Unix系统设计的,但在Windows上也可以通过各种方式安装和使用(例如,通过Chocolatey包管理器或下载预编译的二进制文件)。
以下是一些在Windows环境下使用 wget
的常见命令示例:
基本下载
-
下载单个文件到当前目录:
wget https://22fn.com/example.zip
说明: 这会将
https://22fn.com/example.zip
文件下载到当前命令提示符或PowerShell所在的目录。 -
下载文件并指定保存名称:
wget -O my_custom_name.zip https://22fn.com/example.zip
说明: 使用
-O
(大写O) 选项可以将下载的文件另存为my_custom_name.zip
,而不是其原始文件名。 -
下载文件到指定目录:
wget -P C:\Downloads https://22fn.com/example.zip
说明: 使用
-P
选项可以指定下载文件保存的目录。请确保目标目录存在。
恢复下载
- 恢复中断的下载:
说明: 如果下载中断(例如网络问题),可以使用wget -c https://22fn.com/large_file.iso
-c
选项从上次中断的地方继续下载,避免重新下载整个文件。
批量下载
-
从文件列表中下载多个文件:
首先创建一个名为urls.txt
的文本文件,每行包含一个要下载的URL,例如:https://22fn.com/file1.txt https://22fn.com/image.jpg https://22fn.com/document.pdf
然后执行命令:
wget -i urls.txt
说明:
wget
会读取urls.txt
中的每个URL并依次下载。 -
下载按顺序编号的文件:
如果网站上的文件有规律的编号,例如image1.jpg
,image2.jpg
等,可以使用花括号进行批量下载。wget https://22fn.com/images/image{01..10}.jpg
说明: 这会尝试下载
https://22fn.com/images/image01.jpg
到https://22fn.com/images/image10.jpg
。
递归下载(镜像网站)
-
递归下载整个网站(创建镜像):
wget --mirror --convert-links --page-requisites --no-parent -P website_mirror https://22fn.com
说明: 这是一个用于完整镜像网站的强大命令,通常用于离线浏览。
--mirror
:开启镜像模式,等同于-r -N -l inf --no-host-directories
(递归下载、只下载新文件、无限深度、不创建主机目录)。--convert-links
:将下载的HTML文件中的链接转换为本地链接,以便离线浏览时能正确跳转。--page-requisites
:下载所有页面所需的附加文件(如CSS、JavaScript、图片等)。--no-parent
:不爬取父目录之外的链接。-P website_mirror
:将所有下载内容保存到名为website_mirror
的子目录中。
-
递归下载特定文件类型:
wget -r -A ".jpg,.png" https://22fn.com/gallery/
说明: 递归下载
https://22fn.com/gallery/
目录下所有.jpg
和.png
格式的文件。
控制下载行为
-
限制下载速度:
wget --limit-rate=100k https://22fn.com/large_download.zip
说明: 限制下载速度为100KB/s,以避免占用过多带宽。
-
静默下载(不显示进度):
wget -q https://22fn.com/silent_file.txt
说明: 使用
-q
选项,wget
将在静默模式下运行,除了错误和重要消息外,不显示任何输出。 -
后台下载:
wget -b https://22fn.com/very_large_file.zip
说明: 使用
-b
选项将下载任务放到后台运行。下载进度将写入wget-log
文件。 -
设置重试次数:
wget -t 5 https://22fn.com/unstable_connection_file.dat
说明: 设置下载失败后的重试次数为5次。
-
跳过SSL证书检查(不推荐,仅用于测试或自签证书):
wget --no-check-certificate https://22fn.com/secure_file.exe
说明: 如果遇到SSL证书问题(例如自签名证书),可以使用此选项跳过证书验证。请谨慎使用,这会降低安全性。
其他实用命令
-
伪装用户代理(User-Agent):
wget --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.88 Safari/537.36" https://22fn.com/webpage.html
说明: 模拟浏览器或其他用户代理访问网站,有时网站会根据用户代理返回不同内容。
-
使用HTTP认证:
wget --user=myusername --password=mypassword https://22fn.com/protected/document.pdf
说明: 用于访问需要用户名和密码认证的资源。
在Windows上安装 wget
的方法:
- Chocolatey: 推荐使用Chocolatey,这是一个Windows的包管理器。
- 安装Chocolatey (参考其官方网站)。
- 打开管理员权限的命令提示符或PowerShell。
- 运行
choco install wget
。
- 直接下载二进制文件:
- 从
wget
的Windows官方或第三方编译版本下载可执行文件 (例如,sourceforge.net上有一些版本)。 - 将下载的
wget.exe
文件放到一个系统PATH环境变量包含的目录中 (例如C:\Windows\System32
或你创建的自定义工具目录并添加到PATH)。或者,每次使用时指定wget.exe
的完整路径。
- 从
在使用 wget
时,请务必遵守网站的服务条款和robots.txt协议,避免过度请求给服务器带来不必要的负担。