跳到主要内容

Linux curl 命令教程:实用技巧大集合 🌐

curl 是一个非常强大的命令行工具,广泛用于与 URL 进行交互,支持各种协议,如 HTTP、HTTPS、FTP 等。无论是下载文件、测试 API,还是获取网页内容,curl 都是 Linux 系统中的必备工具之一。

1. 基本语法

curl [options] [URL]

curl 命令通过指定不同的选项来控制如何与 URL 进行交互。最常见的用法是获取某个 URL 的内容。

示例:

curl https://www.example.com

这将会显示网页的 HTML 源代码。

2. 常见实用技巧 🎯

2.1 下载文件 🎉

通过 curl 下载文件非常简单。只需使用 -O-o 选项指定文件名即可。

  • -O:直接使用 URL 中的文件名保存文件。
  • -o:为下载的文件指定自定义文件名。
curl -O https://www.example.com/file.zip

下载后,文件名会与 URL 中的文件名相同。若要指定文件名:

curl -o myfile.zip https://www.example.com/file.zip

2.2 测试 API 请求 🔥

curl 是测试 REST API 请求的利器。你可以轻松地发送 GETPOST 等请求,并查看响应内容。

  • GET 请求(默认)
curl https://api.example.com/resource
  • POST 请求
curl -X POST https://api.example.com/resource -d '{"key":"value"}' -H "Content-Type: application/json"
  • 添加自定义头部
curl -H "Authorization: Bearer YOUR_TOKEN" https://api.example.com/resource

2.3 获取响应头部 🏷️

要查看 HTTP 响应头部,使用 -I 选项。

curl -I https://www.example.com

你将看到类似下面的 HTTP 响应头部信息:

HTTP/1.1 200 OK
Date: Thu, 14 Oct 2024 18:00:00 GMT
Server: Apache
Content-Type: text/html; charset=UTF-8

这对于调试和获取服务器信息非常有用。

2.4 跟踪重定向 🌍

某些 URL 会将你重定向到另一个 URL。如果你想查看整个重定向过程,可以使用 -L 选项来跟踪重定向。

curl -L https://www.example.com

这样,curl 会自动遵循服务器的重定向指令,直到最终到达目标页面。

2.5 设置请求超时 ⏳

curl 默认会等待服务器的响应。如果你希望设置请求的超时时间,可以使用 --max-time 选项。

curl --max-time 10 https://www.example.com

这表示如果 10 秒内没有收到服务器响应,curl 会自动停止请求。

2.6 上传文件 📤

使用 curl 上传文件也非常简单。通过 -F 选项可以模拟表单上传。

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

这样就能将文件上传到指定的 URL。如果你需要模拟 multipart/form-data 表单上传,curl 会自动处理。

2.7 使用代理 🕵️‍♂️

如果你需要通过代理服务器发送请求,可以使用 -x 选项指定代理服务器。

curl -x http://proxy.example.com:8080 https://www.example.com

通过这种方式,你可以通过指定的 HTTP 或 SOCKS 代理发送请求。

2.8 验证 SSL 证书 🔒

如果你想忽略 SSL 证书验证(例如在开发环境中),可以使用 -k--insecure 选项。

curl -k https://example.com

不过,注意:不要在生产环境中使用该选项,它会让你的连接不再安全。

2.9 下载多个文件 📥

如果你要下载多个文件,可以通过将多个 URL 放在一个文件中,然后通过 -K 选项来批量下载。

  1. 创建一个 URL 列表文件:
echo "https://www.example1.com/file1.zip" > urls.txt
echo "https://www.example2.com/file2.zip" >> urls.txt
  1. 使用 curl 下载:
curl -K urls.txt

2.10 显示进度条 🚧

curl 默认会显示下载进度条,但你也可以通过 -# 选项指定其他类型的进度显示。

curl -# -O https://www.example.com/file.zip

进度条会以 # 显示下载进度。

3. 小技巧:组合使用 curl 与其他命令 🛠️

  • 将响应内容保存到文件
curl -o page.html https://www.example.com
  • 从文件读取 URL 并下载
curl -K urls.txt -O
  • 同时输出响应和保存文件
curl -O https://www.example.com/file.zip -v

这样你就能在控制台上看到详细的调试信息,同时将文件保存到本地。

4. 总结 🎯

curl 是一个功能强大的网络工具,可以帮助你与网络服务进行交互,进行文件下载、API 测试、文件上传等多种任务。通过掌握一些实用技巧,你可以在日常工作中大大提高效率。🚀

希望这篇教程对你有所帮助!别忘了收藏在线知识库www.zxzsk.com )哦!😊