curl linux参数怎么用?curl命令常用参数详解

curl 是 Linux 系统中非常强大的命令行工具,主要用于传输数据,支持 HTTP、HTTPS、FTP、SFTP 等多种协议。

以下是 curl 最常用的参数分类整理,方便你快速查阅和使用:

【curl教程】5分钟,快速了解curl用法
加载中
【curl教程】5分钟,快速了解curl用法

基础与常用参数

参数 说明 示例
-o / --output 将输出写入指定文件(而不是直接打印到终端) curl -o page.html https://example.com
-O / --remote-name 使用远程文件的文件名保存文件 curl -O https://example.com/file.zip
-v / --verbose 显示详细的调试信息(包括请求头和响应头) curl -v https://example.com
-s / --silent 静默模式,不显示进度条和错误信息 curl -s https://example.com
-S / --show-error 在静默模式下,如果出错则显示错误信息 curl -sS https://example.com
-L / --location 跟随重定向(301/302),自动跳转到新 URL curl -L https://short.url
-I / --head 只显示响应头(HTTP Headers),不显示内容 curl -I https://example.com

请求方法与数据发送

参数 说明 示例
-X / --request 指定 HTTP 请求方法(GET, POST, PUT, DELETE 等) curl -X POST https://api.example.com

curl linux参数怎么用?curl命令常用参数详解

-d / --data 发送 POST 数据(默认 Content-Type: application/x-www-form-urlencoded) curl -d "name=test" https://api.example.com
-d / --data (JSON) 发送 JSON 数据时,需配合 -H 指定头信息 curl -d '{"key":"value"}' -H "Content-Type: application/json" https://api.example.com
-G / --get -d 的数据附加到 URL 上作为 GET 请求参数 curl -G -d "q=search" https://api.example.com
-F / --form 模拟表单提交(multipart/form-data),常用于文件上传 curl -F "file=@photo.jpg" https://api.example.com/upload

请求头(Headers)控制

参数 说明 示例
-H / --header 自定义请求头 curl -H "Authorization: Bearer token123" https://api.example.com
-A / --user-agent 指定 User-Agent curl -A "MyApp/1.0" https://example.com
-e / --referer 指定 Referer 头(来源页面) curl -e "https://google.com" https://example.com
-b / --cookie 发送 Cookie curl -b "session_id=abc123" https://example.com
-c / --cookie-jar 将服务器返回的 Cookie 保存到文件 curl -c cookies.txt https://example.com
-b /

curl linux参数怎么用?curl命令常用参数详解

--cookie

从文件读取 Cookie 发送curl -b cookies.txt https://example.com

认证与安全

参数说明示例
-u / --user设置基本认证的用户名和密码curl -u username:password https://example.com
--cacert指定 CA 证书文件以验证服务器证书curl --cacert ca-bundle.crt https://example.com
-k / --insecure跳过 SSL 证书验证(仅用于测试,生产环境慎用)curl -k https://self-signed.example.com
--cert指定客户端证书文件(mTLS)curl --cert client.crt --key client.key https://example.com

进度与超时

参数说明示例
/ --progress-bar显示简单的进度条(#号)curl -# -o file.zip https://example.com/file.zip
--connect-timeout连接超时时间(秒)curl --connect-timeout 5 https://example.com
--max-time总操作超时时间(秒)curl --max-time 10 https://example.com
-r / --range只下载文件的一部分(字节范围)curl -r 0-1024 https://example.com/largefile.zip > part1.bin

其他实用参数

curl linux参数怎么用?curl命令常用参数详解

参数 说明 示例
--compressed 请求压缩内容(gzip/deflate),并自动解压 curl --compressed https://example.com
-4 / -6 强制使用 IPv4 或 IPv6 curl -4 https://example.com
--retry 失败重试次数 curl --retry 3 https://example.com
--retry-delay 重试间隔时间(秒) curl --retry 3 --retry-delay 2 https://example.com

🔥 常见使用场景示例

测试 API 接口(GET)

curl -H "Accept: application/json" https://api.example.com/users/1

发送 JSON 数据(POST)

curl -X POST 
  -H "Content-Type: application/json" 
  -d '{"name":"John", "age":30}' 
  https://api.example.com/users

上传文件

curl -X POST 
  -F "file=@/path/to/file.txt" 
  -F "description='My file'" 
  https://api.example.com/upload

查看响应头信息

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

调试网络问题(显示详细交互过程)

curl -v https://example.com

下载文件并重命名

curl -o my_report.pdf https://example.com/reports/annual_report.pdf

💡 小贴士

  • 如果命令太长,可以使用 换行,提高可读性。
  • 使用 -sS 组合可以在静默模式下仍能捕获错误信息,适合脚本中使用。
  • 在 Linux 中,curl 通常预装;如果没有,可通过 sudo apt install curl (Ubuntu/Debian) 或 sudo yum install curl (CentOS/RHEL) 安装。

如需更详细的帮助,请在终端输入:

man curl

curl --help

首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/478594.html

(0)
linux find -print怎么用?linux find命令参数详解
上一篇 2026年7月10日 06:28
java cdn开发,java实现cdn加速原理
下一篇 2026年7月8日 17:11

相关推荐

  • linux crontab sh怎么用?linux定时任务执行shell脚本报错怎么办

    Linux crontab 配合 shell 脚本是自动化运维的核心手段,通过精确的时间调度与脚本逻辑结合,可实现无需人工干预的数据备份、日志清理及任务监控,在服务器管理的日常工作中,手动执行重复性任务不仅效率低下,还容易因人为疏忽导致数据丢失或服务中断,将复杂的业务逻辑封装在 Shell 脚本中,并利用 cr……

    2026年7月9日
    11000
  • 如何彻底卸载Linux下的Resin?Linux卸载Resin完整步骤

    在Linux系统中卸载Resin最稳妥的方式是停止服务进程、删除安装目录并清理环境变量,若需彻底移除则还需清理系统服务配置及数据库连接信息,Resin作为一款经典的Java应用服务器,虽然近年来市场份额被Tomcat和Spring Boot内嵌容器大幅挤压,但在许多遗留系统、老旧企业应用以及特定嵌入式场景中,它……

    2026年7月6日
    19800
  • Dedecms Linux权限怎么设置?Dedecms Linux权限配置

    Dedecms在Linux服务器上的核心权限配置原则是“目录可写、文件只读”,具体而言,网站根目录及上传目录需赋予755或775权限,而所有PHP程序文件必须严格限制为644权限,严禁将网站目录权限设置为777,这是保障系统安全与稳定运行的绝对底线,很多站长在部署Dedecms时,为了图省事,习惯性地给整个网站……

    2026年7月5日
    18900
  • linux如何升级kernel版本?linux升级内核详细步骤

    Linux内核升级并非简单的版本替换,而是涉及硬件兼容性、驱动稳定性及系统安全性的系统工程,建议在生产环境采用“测试先行、回滚预案、平滑过渡”的策略,优先使用发行版提供的长期支持(LTS)版本而非最新主线版本,升级Linux内核往往被视为运维人员的高危操作,因为内核作为操作系统的核心,直接管理硬件资源与进程调度……

    2026年7月8日
    12800
  • linux emmc驱动怎么安装?linux emmc驱动下载

    Linux EMMC驱动的核心在于通过MMC子系统管理存储控制器,解决从底层硬件初始化到上层文件系统挂载的全链路通信问题,其稳定性直接决定了嵌入式设备的启动速度与数据读写性能,在嵌入式开发领域,EMMC(Embedded Multi-Media Card)因其高集成度和高可靠性,已成为智能手机、平板、车载娱乐系……

    2026年7月6日
    7400
  • linux sftp脚本怎么编写?linux sftp批量上传文件脚本

    Linux SFTP脚本的核心在于利用expect或sshpass解决SSH交互式密码验证问题,结合cron定时任务实现自动化文件传输,这是目前最稳定且无需第三方商业软件支持的解决方案,在服务器运维和数据备份的日常工作中,手动登录SFTP传输文件不仅效率低下,还容易因人为疏忽导致数据遗漏,随着企业数字化程度的加……

    2026年7月8日
    12200
  • linux-ha是什么?linux高可用集群搭建配置详解

    Linux-HA(高可用集群)通过心跳检测与资源漂移机制,确保核心业务在节点故障时实现秒级自动切换,是构建企业级高可用架构的基石方案,在数字化转型的深水区,业务连续性不再是“锦上添花”,而是企业的生命线,当服务器硬件突发故障、操作系统内核崩溃,甚至数据中心遭遇局部断电时,如何保证用户无感知、数据不丢失?答案往往……

    2026年7月4日
    14800
  • linux重启命令是什么?如何安全重启Linux服务器

    在Linux系统中重启最标准且安全的方式是使用 sudo reboot 命令,它通过系统初始化进程有序关闭服务并重新引导内核,避免了直接断电导致的数据损坏风险,很多刚接触Linux的朋友,面对黑底白字的终端界面时,第一反应往往是寻找图形界面中的“重启”按钮,或者像操作Windows那样直接按机箱上的复位键,这种……

    2026年7月7日
    11400
  • Linux如何更新Chrome?linux系统安装Chrome浏览器教程

    在Linux系统中更新Chrome最稳定且推荐的方式是通过Google官方提供的APT或YUM软件源进行自动化更新,这能确保你始终获得最新的安全补丁和功能,避免手动下载二进制包带来的依赖冲突风险,很多Linux用户,尤其是刚接触Debian、Ubuntu或CentOS等发行版的用户,常常会遇到Chrome浏览器……

    2026年7月6日
    18610
  • linux find -print怎么用?linux find命令参数详解

    在 Linux 中,find 命令是一个非常强大且常用的文件搜索工具,-print 是 find 命令的一个动作(action),用于指定当找到匹配的文件或目录时,执行什么操作,默认情况下,find 命令会打印出匹配的文件路径,-print 实际上是默认行为,通常可以省略,基本语法find [路径] [条件……

    2026年7月10日
    11500

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注