linux wget命令例子
Linux Wget命令行工具是用于在Internet上下载文件的漂亮实用程序。
它通常在我们想从下载tar包&zipped文件,deb&rpm软件包时使用。
使用wget命令,我们可以通过http,https甚至ftp协议下载文件。
我们可以与WGET命令一起使用的许多选项,使其强大。
在本教程中,我们将查看如何通过示例使用GNU Wget命令。
WGET语法
使用WGET的语法非常简单。
只需调用WGET命令,然后是选项,然后是链接如图所示。
$wget [ options ] url
安装wget.
大多数现代Linux发行版与WGET Utility一起送货,因此我们将不需要安装它。
但是,有一些实例可能需要安装,尤其是旧系统和一些云实例或者解析--bash:wget:命令未找到'错误消息。
对于Ubuntu和Debian Flavors,使用APT包管理器运行以下命令:
$sudo apt-get install wget
要在Rhel/CentOS 8flavor 中安装WGET命令,请执行:
$sudo dnf install wget
对于较旧版本,(RHEL 7和CentOS 7及更早版本)使用YUM包管理器如下
$sudo yum install wget
对于ARCH Linux和Arch Linux发行版,如Manjaro,Arch Linux和Endeavor OS,请使用Pacman Package Manager如下:
$sudo pacman -S wget
从互联网下载文件
在其最基本的形式中,不使用任何选项,Wget命令从URL中指定的Internet下载文件。
最简单的语法如下所示:
$wget website_url
例如,在下面的示例中,我们正在从官方WordPress下载最新的WordPress tar包。
$wget https://wordpress.org/latest.tar.gz
从输出中,我们可以看到WGet首先将的域解析为IP地址,在其上连接到服务器,此后启动文件传输。
下载正在进行中,我们可以看到指示文件名,大小,下载速度以及下载完成时间的进度条。
完成下载后,请务必在我们当前的工作目录中找到该文件。
可以通过调用ls命令来验证这一点。
下载文件并按特定名称保存
如果我们愿意在与原始名称不同的名称下保存文件,只需传递"-O"选项,然后通过首选名称。
$wget -O wordpress.tar.gz https://wordpress.org/latest.tar.gz
上面的命令从WordPress站点下载原始文件'nature.tar.gz',并将其保存为"wordpress.tar.gz"。
下载到特定目录
如前所述,WGET将该文件下载到当前的工作目录。
我们可以使用"目标"目录的"-P"标志指定不同的下载位置,然后指定目标目录的路径。
$wget -P /var/www/html https://wordpress.org/latest.tar.gz
在上面的示例中,该文件将保存在/var/www/html目录中。
限制下载速度
使用WGET,我们还可以限制下载文件的速度。
要在下载速度上放置帽子,请调用--limit-rate
选项,然后是下载速度。
速度通常以每秒以字节为单位测量。
要将限制率设置为500kb/s运行以下命令:
$wget --limit-rate = 500k https://wordpress.org/latest.tar.gz
如何继续获得部分下载的文件
有时在文件下载期间,连接可以突然删除将我们带入部分下载的文件。
而不是重新启动下载,请使用WGET-C
选项以恢复下载,如图所示。
$wget -c https://wordpress.org/latest.tar.gz
在上面的示例中,我们正在恢复来自WordPress的tar包文件的文件下载。
请注意,如果未响应恢复文件下载,则该命令将重新启动文件下载并覆盖现有的。
下载文件在后台
要在后台下载文件,请传递WGET-b
选项,如下所示。
$wget -b https://osdn.net/projects/manjaro/storage/kde/20.0.3/manjaro-kde-20.0.3-200606-linux56.iso
在上面的示例中,我们正在在背景中下载Manjaro KDE等离子体ISO文件。
要监视下载状态,请使用wget log命令如图所示
$tail –f wget –log
下载多个文件
如果我们有多个文件下载,则在终端上重复运行Wget命令非常麻烦。
更好的方法是运行WGET命令一次以后下载文件。
要完成此操作,请在文本文件中保存URL。
此后,请使用"-i"选项"遵循文本文件的名称,调用WGET命令。
在此示例中,我们要下载WordPress tar包文件和OwnCloud Zipped文件。
首先,我们已将下载链接保存到示例文件,让我们调用它'下载':
https://wordpress.org/latest.tar.gz https://download.owncloud.org/community/owncloud-complete-20170731.zip
现在,要下载多个文件,请运行:
$wget -i downloads.txt
这些将在另一个之后下载。
这就是你下载多个文件的方式。
下载一个的镜子
另一个不公布的WGET使用WGE是能够克隆或者制作的镜像副本。
我们可以通过通过显示的设置为-m`选项来实现此目的。
这将创建的镜像副本以及所有内部链接以及其他资源,如图像,小部件,JavaScript和CSS文件。
$wget -m http://www.example.com
如果我们打算克隆一个用于本地浏览的,请通过显示的另外参数。
$wget -m -k -p http://www.example.com
-k
标志有助于将链接转换成适合在本地观看的格式。
同时,"-P""选项指示WGET实用程序下载在浏览器上HTML页面上显示内容所需的相关文件。
忽略SSL证书
要避免从SSL证书不信任或者有效的Web服务器下载到HTTPS上的文件时运行错误,请通过--no-check-certifica
选项:
$wget --no-check-certificate https://domain-with-untrusted-ssl-cert
将输出下载和重定向到日志文件
使用"-o"选项在文件下载期间可以记录WGET命令的输出,如图所示:
$wget -o download.log https://wordpress.org/latest.tar.gz
此后,我们可以在使用尾命令的下降进入时实时查看日志文件,如图所示:
$tail -f download.log
限制下载重试
有时,我们可能会遇到可能阻止我们下载文件的缓慢带宽速度。
我们可以使用WGET"--tries = [否。
尝试]"选项如图所示:
$wget --tries=10 https://wordpress.org/latest.tar.gz
在上面的示例中,Get将在退出之前重试tar包文件的10次下载。
从FTP服务器下载
我们还可以从FTP服务器下载文件,即使是密码保护。
我们需要做的就是在WGET命令中传递FTP用户名和密码,如图所示:
$wget --ftp-user=[ftp_user] --ftp-password=[ftp_password] ftp://ftp.ftp-site.com
更改Wget用户代理
用户代理基本上是由浏览器发送到Web服务器的标题字段。
如果我们正在下载网页,WGET将效仿Web浏览器。
它如此恰好发生,有时会收到一个错误,指示我们没有足够的权限来访问服务器。
当发生这种情况时,机会是或者Web服务器阻止与特定的"用户代理"关联的浏览器。
这是我们可以找到的用户代理的数据库。
要更改用户代理,请使用语法:
$wget -U "user agent" URL
例如,要在模仿Google Chrome版本74的同时下载站点examply.com,它是最新版本,请使用:
$wget -U "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36" "http://example.com"
递归下载
如要下载本地查看的,我们需要打开带有-R
或者- rocuraive
选项的递归下载,并将链接转换为具有-k
或者--convert-links
选项的本地链接。
例如:
$wget -rk https://example.com