Linux/Unix 中的 wget 命令
Wget 是非交互式网络下载器,用于从服务器下载文件,即使用户尚未登录系统,它也可以在后台工作,而不会妨碍当前进程。
- GNU wget 是一个免费实用程序,用于从 Web 非交互式下载文件。它支持 HTTP、HTTPS 和 FTP 协议,以及通过 HTTP 代理检索。
- wget 是非交互式的,这意味着它可以在后台工作,而用户未登录。这允许您开始检索并断开与系统的连接,让 wget 完成工作。相比之下,大多数 Web 浏览器都需要用户始终在场,这在传输大量数据时会是一个很大的障碍。
- wget 可以跟踪 HTML 和 XHTML 页面中的链接并创建远程网站的本地版本,完全重新创建原始站点的目录结构。这有时称为递归下载。这样做时,wget 遵守机器人排除标准 (/robots.txt)。可以指示 wget 将下载的 HTML 文件中的链接转换为本地文件以供离线查看。
- wget 被设计为在缓慢或不稳定的网络连接上具有鲁棒性;如果由于网络问题下载失败,它将继续重试,直到整个文件被检索。如果服务器支持恢复,它将指示服务器从停止的地方继续下载。
句法 :
wget [option] [URL]
例子 :
1. 简单地下载一个网页:
wget http://example.com/sample.php
2.在后台下载文件
wget -b http://www.example.com/samplepage.php
3.覆盖wget命令的log wile
wget http://www.example.com/filename.txt -o /path/filename.txt
4. 恢复部分下载的文件
wget -c http://example.com/samplefile.tar.gz
5. 尝试给定次数
wget --tries=10 http://example.com/samplefile.tar.gz
选项 :
1. -v / –version :这用于显示系统上可用的 wget 版本。
句法
$wget -v
2. -h / –help :这用于打印帮助消息,显示 wget 命令行选项可用的 line 命令的所有可能选项
句法
$wget -h [URL]
3. -o logfile :此选项用于将系统生成的所有消息定向到该选项指定的日志文件,并且当进程完成时,由此生成的所有消息都在日志文件中可用。如果未指定日志文件,则输出消息将重定向到默认日志文件,即 wget -log
句法
$wget -o logfile [URL]
4. -b / –background :此选项用于在进程启动后立即将进程发送到后台,以便其他进程可以执行。如果未通过 -o 选项指定输出文件,则默认情况下将输出重定向到 wget-log。
句法
$wget -b [URL]
5. -a :此选项用于将输出消息附加到当前输出日志文件而不覆盖文件,因为在 -o 选项中,输出日志文件将被覆盖,但通过使用此选项,上一个命令的日志将被保存,并且当前日志在之前的日志之后写入。
句法
$wget -a logfile [URL]
6. -i :此选项用于从文件中读取 URL。如果 -i 指定为文件,则从标准输入读取 URL。如果使用此函数,则命令行上不需要出现 URL。如果命令行和输入文件中都有 URL,则命令行上的 URL 将首先被检索。如果 URL 只是按顺序列出,则该文件不必是 HTML 文档。
句法
$wget -i inputfile
$wget -i inputfile [URL]
7. -t number / –tries=number :此选项用于将重试次数设置为指定的次数。指定 0 或 inf 以进行无限重试。默认是重试 20 次,除了连接被拒绝或链接未找到等致命错误,一旦发生错误就不会重试。
句法
$wget -t number [URL]
8. -c :如果文件的恢复能力为是,则使用此选项恢复部分下载的文件,否则如果给定文件的恢复能力为 no 或未指定,则无法恢复文件的下载。
句法
$wget -c [URL]
9. -w :此选项用于设置系统在两次检索之间等待指定的秒数。建议使用此选项,因为它通过降低请求频率来减轻服务器负载。可以使用 m 后缀以分钟为单位指定时间,使用 h 后缀以小时为单位,或使用 d 后缀以天为单位指定时间,而不是以秒为单位。如果网络或目标主机出现故障,为此选项指定一个较大的值会很有用,这样 wget 就可以等待足够长的时间以合理地期望在重试之前修复网络错误。
句法
$wget -w number in seconds [URL]
10. -r :此选项也用于在出现致命错误的情况下打开指定链接的递归检索。此选项是对命令行中给定链接的递归调用。
句法
$wget -r [URL]