CentOS7 通过wget下载文件到指定目录

CentOS7 通过wget下载文件到指定目录

引言

在 Linux 命令行环境中,wget是一款功能强大且使用广泛的非交互式文件下载工具,尤其适合在服务器和自动化脚本中使用。对于 CentOS 7 用户而言,掌握wget的安装与核心用法,能够显著提升文件下载与管理的效率。本文将系统性地介绍如何在 CentOS 7 中检查与安装wget,并重点解析如何使用-P参数将文件精准下载到指定目录,同时还会补充其他实用参数,帮助您全面驾驭这一命令行利器。

1. 检查 wget 是否已安装

首先,我们需要确认当前 CentOS 7 系统是否已经安装了wget。可以通过以下命令进行查询:

rpm -qa | grep wget

如果系统已安装wget,命令会输出类似如下的版本信息:

wget-1.14-15.el7_4.1.x86_64

2. 安装 wget(如未安装)

如果上述命令没有返回任何结果,说明wget尚未安装。可以通过yum包管理器快速安装:

yum install -y wget

3. 使用 wget 下载文件到指定目录

安装完成后,最基本的下载命令格式为:

wget [文件下载地址]

此时文件会默认保存到当前工作目录。

若需要将文件下载到指定的目录,可以使用-P参数,其语法如下:

wget -P [保存文件的目录] [文件下载地址]

其中,-P参数后面紧跟的是目标保存目录的完整路径,最后一个参数则是要下载的网络文件的 URL 地址。

示例:下载 Elasticsearch 6.4.2 到指定目录

以下命令演示了如何将 Elasticsearch 6.4.2 的 tar 包下载到/home/tmp/download目录:

wget -P /home/tmp/download https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.2.tar.gz

执行后,终端会显示详细的下载进度信息,例如:

--2018-10-15 13:58:40-- https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.2.tar.gz 正在解析主机 artifacts.elastic.co (artifacts.elastic.co)... 107.21.127.184, 54.225.221.128, 107.21.237.188, ... 正在连接 artifacts.elastic.co (artifacts.elastic.co)|107.21.127.184|:443... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度:97914519 (93M) [application/x-gzip] 正在保存至: “/home/tmp/download/elasticsearch-6.4.2.tar.gz” ...
其他常用参数

除了-P参数外,wget还有其他一些实用的参数:

-c(断点续传):当下载因网络中断或其他原因失败时,可以使用-c参数继续之前的下载进度,而无需重新开始。

wget -c https://example.com/large-file.zip

-O(指定输出文件名):使用-O参数可以指定下载文件的保存名称,而不是使用 URL 中的原始文件名。

wget -O my-custom-name.tar.gz https://example.com/package.tar.gz

这些参数可以组合使用,例如同时指定下载目录和输出文件名:

wget -P /home/tmp/download -O elasticsearch.tar.gz https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.2.tar.gz

4. 总结

通过本文的介绍,我们全面了解了wget在 CentOS 7 环境下的安装与核心使用方法。wget的核心优势在于其非交互式、支持断点续传、递归下载以及丰富的参数选项,使其成为自动化脚本、系统管理、批量下载和远程资源备份的理想工具。无论是通过-P参数指定下载目录,还是结合-c实现断点续传、-O自定义输出文件名,wget都能提供灵活而强大的文件获取能力。掌握这些技巧,您将能更高效地处理各类文件下载任务,提升工作效率。