GNU Wget是用于从Web下载文件的命令行实用程序。使用Wget,您可以使用HTTP,HTTPS和FTP协议下载文件。 Wget提供了许多选项,使您可以下载多个文件,恢复下载,限制带宽,递归下载,在后台下载,镜像网站等等。

在本教程中,我们将通过实际示例和最常见的Wget选项的详细说明向您展示如何使用Wget命令。

安装Wget

今天的wget软件包已预先安装在大多数Linux发行版中。

要检查系统上是否安装了Wget软件包,请打开控制台,键入wget,然后按Enter。如果已安装wget,则系统将打印wget: missing URL,否则,将打印wget command not found。

如果未安装wget,则可以使用发行版的软件包管理器轻松安装它。

在Ubuntu和Debian上安装Wgetsudo apt install wget

在CentOS和Fedora上安装Wgetsudo yum install wget

Wget命令语法

在介绍如何使用wget命令之前,让我们先回顾一下基本语法。

wget实用程序表达式采用以下形式:wget [options] [url]options-Wget选项

url-您要下载或同步的文件或目录的URL。

如何使用Wget下载文件

以最简单的形式使用时,wget会将[url]中指定的资源下载到当前目录。

在以下示例中,我们正在下载Linux内核tar归档文件:wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.17.2.tar.xz

如上图所示,Wget首先解析域的IP地址,然后连接到远程服务器并开始传输。

在下载过程中,Wget显示进度条以及文件名,文件大小,下载速度和完成下载的预计时间。下载完成后,您可以在当前工作目录中找到下载的文件。

要关闭Wget的输出,请使用-q选项。

如果文件已经存在,Wget将在文件名的末尾添加.N(数字)。

使用Wget命令以其他名称保存下载的文件

要以其他名称保存下载的文件,请传递-O选项,后跟所选名称:wget -O latest-hugo.zip https://github.com/gohugoio/hugo/archive/master.zip

上面的命令会将GitHub上的最新hugo zip文件保存为latest-hugo.zip,而不是其原始名称。

使用Wget命令将文件下载到特定目录

默认情况下,Wget将下载的文件保存在当前工作目录中。要将文件保存到特定位置,请使用-P选项:wget -P /mnt/iso http://mirrors.mit.edu/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1804.iso

使用上面的命令,我们告诉Wget将CentOS 7 iso文件保存到/mnt/iso目录。

如何使用Wget限制下载速度

要限制下载速度,请使用--limit-rate选项。默认情况下,速度以字节/秒为单位。附加k代表千字节,m代表兆字节,g代表千兆字节。

以下命令将下载Go二进制文件并将下载速度限制为1mb:wget --limit-rate=1m https://dl.google.com/go/go1.10.3.linux-amd64.tar.gz

当您不希望wget占用所有可用带宽时,此选项很有用。

如何使用Wget恢复下载

您可以使用-c选项恢复下载。如果您在下载大文件期间断开连接,而无需从头开始下载,则可以继续前一个下载。

在以下示例中,我们恢复Ubuntu 18.04 iso文件的下载:wget -c http://releases.ubuntu.com/18.04/ubuntu-18.04-live-server-amd64.iso

如果远程服务器不支持继续下载,则Wget将从头开始下载并覆盖现有文件。

如何使用Wget在后台下载

要在后台下载,请使用-b选项。在以下示例中,我们在后台下载OpenSuse iso文件:wget -b https://download.opensuse.org/tumbleweed/iso/openSUSE-Tumbleweed-DVD-x86_64-Current.iso

默认情况下,输出重定向到当前目录中的wget-log文件。要查看下载状态,请使用tail命令:tail -f wget-log

如何更改Wget的Wget用户代理

有时在下载文件时,可以将远程服务器设置为阻止Wget User-Agent。在这种情况下,要模拟其他浏览器,请通过-U选项。wget --user-agent="Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0" http://wget-forbidden.com/

以上命令将模拟Firefox 60从wget-forbidden.com请求页面

如何使用Wget下载多个文件

如果要一次下载多个文件,请使用-i选项,后跟包含要下载URL列表的本地或外部文件的路径。每个网址都必须放在单独的行中。

在以下示例中,我们要下载具有linux-distros.txt文件中指定的URL的Arch Linux,Debian和Fedora iso文件:wget -i linux-distros.txt

linux-distros.txthttp://mirrors.edge.kernel.org/archlinux/iso/2018.06.01/archlinux-2018.06.01-x86_64.iso

https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-9.4.0-amd64-netinst.iso

https://download.fedoraproject.org/pub/fedora/linux/releases/28/Server/x86_64/iso/Fedora-Server-dvd-x86_64-28-1.1.iso

如果您将-指定为文件名,则将从标准输入中读取URL。

使用Wget命令通过FTP下载

要从受密码保护的FTP服务器下载文件,请指定用户名和密码,如下所示:wget --ftp-user=FTP_USERNAME --ftp-password=FTP_PASSWORD ftp://ftp.example.com/filename.tar.gz

使用Wget命令创建网站的镜像

要使用Wget创建网站的镜像,请使用-m选项。通过跟踪并下载所有内部链接以及网站资源(JavaScript,CSS,图像),这将创建网站的完整本地副本。wget -m https://example.com

如果要使用下载的网站进行本地浏览,则需要向上述命令传递一些额外的参数。wget -m -k -p https://example.com

-k选项将使Wget转换已下载文档中的链接,以使其适合本地查看。 -p选项将告诉wget下载所有必要的文件以显示HTML页面。

如何使用Wget跳过证书检查

如果要从SSL证书无效的主机通过HTTPS下载文件,请使用--no-check-certificate选项:wget --no-check-certificate https://domain-with-invalid-ss.com

如何使用Wget下载到标准输出

在下面的示例中,Wget将安静地(标记-q)下载并输出最新的WordPress版本到stdout(标记-O -),并将其通过管道传输到tar实用程序,该实用程序将存档提取到/var/www ]目录。wget -q -O - "http://wordpress.org/latest.tar.gz" | tar -xzf - -C /var/www

结论

使用Wget,您可以根据需要下载多个文件,恢复部分下载,镜像网站并组合Wget选项。

要了解有关Wget的更多信息,请访问GNU wget手册页面。

linux wget返回值_Linux中的Wget命令与示例相关推荐

  1. linux wget返回值_Linux中curl命令和wget命令的使用介绍与比较

    原文链接: 这篇文章主要给大家介绍了Linux中curl命令和wget命令使用以及这两者之间的区别比较,curl和wget命令都是Linux下的工具,可以用来下载文件.文中介绍的非常详细,相信对大家具 ...

  2. linux wget返回值_Linux中wget用法

    Wget简介: Linux系统中wget是一个下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,我们经常要下载一些软件或从远程服务器恢复备份到本地服务器.wget支持HTTP,HTT ...

  3. shell 中diff返回值_LINUX(中)

    什么是Shell? Shell 是 Linux 的命令解释器,用于解释用户对操作系统的操作 cat /etc/shells CentOS 7 默认使用的 Shell 是 bash 命令执行的具体过程: ...

  4. mysql linux 函数返回值_linux recv函数返回值分析

    函数原型: ssize_t recv(int sockfd, void *buf, size_t len, int flags); 该函数第一个参数制定接收端套接字描述符; 第二个参数指明一个缓冲区, ...

  5. java for循环返回值_Java中的for循环——通过示例学习Java编程(9)

    作者:CHAITANYA SINGH 来源:https://www.koofun.com/pro/kfpostsdetail?kfpostsid=21 循环用于反复执行同一组语句,直到满足特定条件为止 ...

  6. sysctl 默认值_Linux中的Sysctl命令

    Linux系统中的sysctl命令可以修改默认的内核参数和行为.本文介绍了如何使用Linux系统的sysctl命令在运行时查看和修改内核参数. 作为Linux系统管理员,有时您可能需要修改默认内核的行 ...

  7. python os.system保存返回值_python中os.system的返回值

    python中os.system()的返回值 1.python中的 os.system(cmd)的返回值与linux命令返回值(具体参见本文附加内容)的关系 你们都习惯用os.systemv()函数执 ...

  8. java split 返回值_java中Split函数的使用方法

    1.语法如下 String.split(sourceStr,maxSplit) String.split(sourceStr) 参数说明:sourceStr是被分割的字符串,maxSplit是最大的分 ...

  9. linux mkfs 源码,Linux系统下移植busybox中mkfs.vfat命令

    为了延长磁盘寿命来存储音视频文件,打发在格式化磁盘过程中将簇的大小设置大点.因为存储的音视频文件现对较大,那么将簇大小设置得尽可能大,这样可以增强磁盘读取数据的性能,同时也不会浪费太多空间. 但发现我 ...

最新文章

  1. 巨头纷纷看上的中国Robobus又获1亿美元投资
  2. [POJ] 3687 Labeling Balls(拓扑排序)
  3. 隐藏画质代码_【和平精英】变成恐怖精英?玩家在墙上发现了一幅隐藏的壁画!...
  4. C++成员函数的内存分配问题
  5. 第44讲:scrapy中间键Middleware的使用
  6. 作者:谢波峰(1976-),男,中国人民大学财政金融学院副教授,中国人民大学金融与财税电子化研究所执行所长。...
  7. 征稿通知!ICCV 2021 第一届面向意图表达的手绘草图研讨会
  8. 线程池拒绝策略-RejectedExecutionHandler
  9. 趣味程序之打印字符图案系列
  10. Datawhale数据挖掘项目之task2
  11. 保护计算机系统与数据有什么方法,电脑数据保护方法 看完保你不后悔
  12. 电脑桌面隐藏文件如何恢复出来呢
  13. CodeCanyon上的12种最佳CSS动画
  14. xpwifi热点设置android,xp设置共享wifi热点方法分享
  15. 三星Galaxy Note 10.1刷机教程
  16. Apache Curator
  17. iOS经典讲解之判断App是否第一次启动
  18. Linux对main未定义引用,当对体量使用实时时,对main的未定义引用
  19. ❤️微信小程序 云开发 教程合集(视频+图文)免费❤️
  20. php花朵飘落特效,WordPress 主题添加花瓣飘落特效

热门文章

  1. 如何在Java IDEA中安装阿里P3C以及使用说明
  2. iOS扫码识别【自动拉近放大】(扫描较小二维码地过程中拉近放大图片)【光线暗的时候,能够自动打开闪光灯】
  3. 充电宝怎样耐用?耐用的充电宝推荐
  4. 2月19号吃鸡服务器维护多久,绝地求生今天更新到几点?2020最新维护公告 8月19日更新内容一览...
  5. ‘get‘ 不是内部或外部命令,也不是可运行的程序或批处理文件的问题:没有下载或配置get
  6. python 人工智能库_python机器学习库sklearn——集成方法
  7. List中删除指定元素
  8. list 删除多个指定位置的元素
  9. Modules:手机号码验证
  10. java如何实现微信授权登录