迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 操作系统 >

Curl 和 Wget 的区别

作者:迹忆客 最近更新:2023/03/17 浏览次数:

我们通常会考虑在从 Internet 下载文件时按下下载按钮。但是,你可以从终端下载文件。

wgetcurl 是最常用的两个工具。本教程将着眼于这两者,看看它们有何不同。

curl 命令允许你将数据从任何服务器发送到你的计算机。另一方面,wget 命令将数据下载为文件。

这是两个命令之间最显着的区别。

在 Linux 中安装 wgetcurl

如果你没有安装 wgetcurl,你可以使用下面的命令下载。

使用以下命令在你的系统上安装 curl

#Debian and Ubuntu Systems
sudo apt install curl
  
#Arch Linux
sudo pacman -S curl

使用以下命令在你的系统上安装 wget

#Debian and Ubuntu Systems
sudo apt install wget
 
#Arch Linux-based distros:
sudo pacman -S wget

在 Linux 中使用 curl 访问网站

让我们在 google.com 上运行 curl 以查看输出的样子。

$ curl google.com

输出:

<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 Moved</TITLE></HEAD><BODY>
<H1>301 Moved</H1>
The document has moved
<A HREF="http://www.google.com/">here</A>.
</BODY></HTML>

如你所见,curl 显示来自终端网页的数据。

在 Linux 中使用 wget 访问网站

让我们在一些网站上运行 wget 来查看输出。

$ wget python.org

输出:

--2022-01-19 21:50:34--  http://python.org/
Resolving python.org (python.org)... 138.197.63.241
Connecting to python.org (python.org)|138.197.63.241|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://python.org/ [following]
--2022-01-19 21:50:37--  https://python.org/
Connecting to python.org (python.org)|138.197.63.241|:443... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://www.python.org/ [following]
--2022-01-19 21:50:39--  https://www.python.org/
Resolving www.python.org (www.python.org)... 2a04:4e42:2d::223, 151.101.188.223
Connecting to www.python.org (www.python.org)|2a04:4e42:2d::223|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 49799 (49K) [text/html]
Saving to: 'index.html'

index.html                          100%[=================================================================>]  48.63K  9.75KB/s    in 5.0s    

2022-01-19 21:50:46 (9.75 KB/s) - 'index.html' saved [49799/49799]

wget 默认情况下将结果保存到文件中。在输出中,还有一个进度条。

Linux 中 curlwget 之间的区别

  • curl 基于 libcurl,这是一个跨平台库,具有任何人都可以使用的明确定义的 API。这种区别很关键,因为它产生了一种完全不同的处理内部事物的心态。

    库也比简单命令行工具更难创建。

  • curl 类似于标准 Unix-cat 命令,因为它以 everything is a pipe 方式将更多数据传输到 stdout 并从 stdin 读取更多数据。

  • curl 主要设计用于执行单次数据传输。它只传输用户选择的 URL,没有任何递归下载逻辑或 HTML 解析器。

与 Linux 中的 curl 命令对比中的 wget

  • curl 相比,wget 的主要优势在于它能够递归下载,甚至只是从远程资源引用的所有内容,无论是 HTML 页面还是 FTP 目录列表。
  • wget 可以追溯到它的前身 1996 年 1 月 9 日,而 curl 只能追溯到 1996 年 11 月 11 日。
  • wget 在 GNU 通用公共许可证版本 3 下发布。
  • wget 是 GNU 项目的一部分,所有版权已移交给自由软件基金会。curl 项目完全自给自足,没有组织监督,几乎所有版权归 Daniel 所有。
  • wget 不需要任何附加参数即可将远程 URL 下载到本地文件,但 curl 需要。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 CentOS 中获取 IP 地址

发布时间:2023/05/04 浏览次数:108 分类:操作系统

这篇简短的文章是对 CentOS 的一个简短介绍,然后简要讨论了我们如何使用命令行界面 (CLI) 在 CentOS 中获取服务器 IP 地址。

在 Linux 中更新 YUM

发布时间:2023/05/04 浏览次数:82 分类:操作系统

本文介绍了 Linux 中的 yum update 命令。本文将教我们如何在 Linux 中更新 YUM,以及如何在 Linux 系统上安装、更新、删除、查找和管理包。

在 Linux 中安装 Deb 文件

发布时间:2023/05/04 浏览次数:130 分类:操作系统

本文介绍如何在 Linux 中安装 deb 文件。在这篇 Linux 文章中,我们将学习如何在 Linux 系统上安装 .deb(Debian 软件包)文件。 我们还将看到如何在安装后删除 .deb 文件。

Linux 中的 lsof 命令

发布时间:2023/05/04 浏览次数:82 分类:操作系统

在这篇 Linux 文章中,我们将了解 Linux 操作系统中的 lsof 命令。 我们将看到如何在 Linux 中将此命令用于不同目的。

Linux 中的 ps aux 命令

发布时间:2023/05/04 浏览次数:69 分类:操作系统

本篇文章将讨论 Linux 中的 ps aux 命令。如果将 aux 快捷方式与 ps 命令一起使用,它将显示用户需要的最多信息,并可以为您提供系统运行进程的当前状态。

Linux 中的 NTP

发布时间:2023/05/04 浏览次数:137 分类:操作系统

本篇文章将讨论 Linux 中的 ntp。NTP 是大多数 IT 基础设施使用的核心协议。 使用它的目的是同步日期和时间信息。

在 Bash 中创建进度条

发布时间:2023/05/04 浏览次数:164 分类:操作系统

这是有关在 Bash 中创建进度条以显示正在运行的命令或进程的进度的指南。本文将探讨在 Bash(Linux 和 macOS 的默认 shell)中向 shell 脚本添加进度条的几种方法。使用 pv 命令在 Bash 中创建进度条

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便