ZetCode

Linux curl 命令

最后修改于 2025 年 2 月 25 日

Linux 中的 curl 命令是一个强大的工具,用于通过各种协议(如 HTTP、HTTPS、FTP 等)与服务器传输数据。它广泛用于下载文件、测试 API 和自动化 Web 请求。本教程通过实际示例涵盖了 curl 的基本和高级用法。

curl 支持广泛的功能,包括身份验证、文件上传和自定义标头,使其成为开发人员和系统管理员的多功能工具。

基本用法

此示例演示了如何使用 curl 从 URL 下载文件。

basic_usage.sh
curl -O https://example.com/file.txt

-O 选项以其原始名称保存文件。

下载为其他名称

此示例显示如何下载文件并以自定义名称保存。

custom_name.sh
curl -o custom_name.txt https://example.com/file.txt

-o 选项允许您指定输出文件名。

遵循重定向

此示例演示了如何使用 -L 选项遵循重定向。

follow_redirects.sh
curl -L https://example.com/redirect

-L 选项确保 curl 遵循任何重定向到最终目的地。

使用自定义标头

此示例显示如何使用 curl 请求发送自定义 HTTP 标头。

custom_headers.sh
curl -H "Authorization: Bearer token" -H "Content-Type: application/json" https://example.com/api

-H 选项允许您将自定义标头添加到请求中。

上传文件

此示例演示了如何使用 curl 上传文件。

upload_file.sh
curl -F "file=@/path/to/file.txt" https://example.com/upload

-F 选项用于将文件作为表单数据上传。

测试 API

此示例展示了如何使用 curl 测试 REST API。

test_api.sh
curl -X POST -d '{"key":"value"}' -H "Content-Type: application/json" https://example.com/api

-X 选项指定 HTTP 方法,-d 在请求正文中发送数据。

高级:使用 Cookie

此示例演示了如何使用 Cookie 和 curl

use_cookies.sh
curl -b "cookie_name=cookie_value" https://example.com

-b 选项将 Cookie 发送到请求。

curl 的最佳实践

来源

curl 手册

在本文中,我们探讨了使用 curl 命令进行数据传输的各种示例,包括下载文件、上传文件、测试 API 以及使用自定义标头和 Cookie。

作者

我叫 Jan Bodnar,是一名充满热情的程序员,拥有丰富的编程经验。我自 2007 年以来一直在撰写编程文章。迄今为止,我已撰写了 1400 多篇文章和 8 本电子书。我在编程教学方面拥有十多年的经验。

列出所有 Linux 教程