curl命令常用详解
创作时间:
作者:
@小白创作中心
curl命令常用详解
引用
CSDN
1.
https://blog.csdn.net/weixin_46357988/article/details/139718156
Curl是一个强大的命令行工具,用于与服务器进行数据传输。它支持多种协议,包括HTTP、FTP、SMTP等,并提供了丰富的参数选项,可以满足各种网络数据传输需求。本文将详细介绍curl的基本用法、常用参数及其应用场景。
1、curl 介绍
Curl是一个命令行工具和库(libcurl),用于与服务器进行数据传输。它支持各种协议,包括HTTP、FTP、SMTP、POP3等,并支持常见的身份验证、代理、cookie等功能。curl通常用于测试API、爬取网页、上传和下载文件等任务。curl 由 libcurl 提供支持,可实现所有与传输相关的功能。
2、curl 语法
语法:curl [options...] <url> #options是表示参数 url是网页的地址
Options: (H) means HTTP/HTTPS only, (F) means FTP only。
某些选项只适用于 HTTP/HTTPS 协议,而另一些选项只适用于 FTP 协议。
当选项标注为 (H) 时,表示该选项仅在使用 HTTP/HTTPS 协议时可用。这意味着你只能在发送 HTTP 或 HTTPS 请求时使用这些选项。
当选项标注为 (F) 时,表示该选项仅在使用 FTP 协议时可用。这意味着你只能在进行 FTP 操作时使用这些选项。
3、curl 常用参数
-h, --help:显示帮助文本。使用这个选项可以查看curl的帮助信息。-V, --version:显示版本号并退出。通过使用这个选项,你可以查看curl的版本号信息。-X, --request method:用于指定要使用的请求方法。常见的请求方法包括 GET、POST、PUT、DELETE 等。通过指定请求方法,你可以告诉curl在发送请求时使用特定的 HTTP 方法。-H, --header <HEADER>:添加自定义的请求头。通过该参数,你可以添加一个自定义的请求头传递给服务器。请求头信息 -d, --data <DATA>:发送 POST 请求时附带的数据。用于指定要作为请求体发送的数据,通过指定 -d 选项,你可以将数据附加到请求中。发送的数据-F, --form <KEY=VALUE>:发送 multipart/form-data 请求时附带的表单数据。使用表单格式发送数据。格式为 KEY=VALUE,类似URL编码的表单数据。-o, --output <FILE>:将服务器响应内容保存到指定的文件中。文件名 -O, --remote-name:将服务器响应保存到与远程文件名相同的文件中。-T, --upload-file:选项用于指定要上传的文件。你可以使用该选项将本地文件上传到服务器。-u, --user USER:PASSWORD:指定用户名和密码,用于 HTTP基本身份验证。USER:PASSWORD,用户名:密码-L, --location:跟随服务器重定向,将服务器响应保存到新位置。-c, --cookie <STRING/FILE>:使用指定的字符串或文件中的cookie来发送请求。你可以提供一个包含 cookie 的字符串,或者使用一个文件来读取 cookie。<STRING/FILE>字符串或者文件名-m, --max-time:用于设置传输的最大时间限制。-C, --continue-at <offset>:用于断点续转下载。如果下载被中断,你可以使用该选项指定要从哪个字节偏移量开始继续下载。就是偏移量 -b, --cookie-jar <FILE>:将服务器返回的cookie保存到指定的文件中。文件名 -k, --insecure:允许连接到SSL/TLS加密的站点时忽略证书验证。这在测试环境或不信任的环境中可能会有用,但在生产环境中不建议使用。-s, --silent:在执行请求时不打印进度或错误信息,使curl静默工作。这对于脚本中的静默操作很有用。-v, --verbose:显示详细的请求和响应信息,包括请求头、响应头和其他调试信息。-I, --head:仅获取响应头信息。-x, --proxy PROTOCOL://HOST:PORT:用于指定代理服务器的地址和端口。PROTOCOL://HOST:PORT 协议://主机名:端口-A, --user-agent <USERAGENT>:设置用户代理字符串,模拟特定浏览器或客户端发送请求。指定的客户端 --compressed:请求服务器发送经过压缩的响应。这可以节省带宽和加快传输速度。curl默认会自动处理压缩的响应,但使用该选项可以强制请求压缩的响应。请求压缩后的响应。--limit-rate <RATE>:限制请求的传输速率。你可以使用该选项设置一个速率限制,以控制请求的带宽。请求的速率 --retry <NUM>:指定请求失败时的重试次数。你可以使用该选项指定重试的次数。重试的次数
4、curl 常用案例
- 通过curl命令可以获取指定URL的网页内容,并将其输出到终端。
curl https://www.djl.cn
- 指定-o参数可以用于从服务器下载文件并把响应的内容保存到指定文件中。这里是把响应的内容保存在a.txt文件中
curl -o a.txt https://download.djl.cn/a.sh
- 指定-O参数可以用于从服务器下载文件并保持与远程文件名相同的文件中。
curl -O https://download.djl.cn/a.sh
- 指定-T参数可以把本地的文件上传到服务器上面。这里把a.txt文件上传到服务器中
curl -T a.txt https://www.dengjilin.top/upload
- 可以用于发送POST请求,并传递数据给服务器。-X指定请求的方法,-d指定请求的数据
curl -X POST -d "name=djl&passwd=abcd" https://www.dengjilin.top/api
- 指定-H参数可以用于设置HTTP请求头。
curl -H "Content-Type: application/json" https://www.dengjilin.top/api
- 指定-x参数可以通过代理服务器进行请求。这将通过名为http://proxy.dengjilin.top:8080的HTTP代理服务器(端口号为8080)访问https://www.dengjilin.top。
curl -x http://proxy.dengjilin.top:8080 https://www.dengjilin.top
- 指定-m参数可以设置请求的超时时间,单位为秒。这将向https://www.dengjilin.top发送HTTP GET请求,并设置超时时间为10秒。如果在10秒内没有收到服务器的响应,curl命令将终止请求。
curl -m 10 https://www.dengjilin.top
- curl命令默认是不会自动跟随HTTP重定向。可以通过-L参数启用重定向。
curl -L https://www.djl.cn
- 指定-v参数输出详细的调试信息,包括请求和响应头信息。
curl -v https://www.djl.cn
热门推荐
忙碌上班族的宠物选择:养猫更省心便捷
四川话比火锅还有味道?是真的!
解密中国俚语:扯犊子是什么意思
何蓝逗森竣领衔,《盖世英雄》引爆期待
五行起名法:让孩子赢在起跑线的传统智慧
手机护眼模式:如何在iPhone和安卓手机上开启?
2025年高分宝宝名字出炉啦!
如何像钱钟书那样起个高分名字?
普迈迪贻贝鼻炎喷雾:鼻炎患者的福音
我今天发现“帆布鞋”更百搭耐看,满大街女生都在穿,高级又时髦
布鞋:一种回归自然的健康选择
舌苔黄腻最快处理办法有7个 舌苔黄腻吃什么中成药
这部人体恐怖片居然是戛纳的第一“显眼包”
佛教七宝:七种珍贵材质的象征意义与文化内涵
教育公平,构建更为平等的社会结构的关键要素
结肠炎吃啥中成药比较好
格林童话:为儿童而写,也为人的理想镜像
秦艽的秘密:从中风到关节炎,这味中药为何备受推崇
秦始皇统一六国,竟然是这样影响我们的?
秦朝疆域扩展:从统一六国到万里长城
盘点全国著名山川之河北
北京西山:自然之美与人文之魂交相辉映
鲁迅的社会观察与《沉默的目击者》
舌苔厚黄喝什么茶效果好:女性调理茶推荐
春节倒计时:自制新年装饰品教程
DIY新年礼物,让祝福与众不同
小年夜和孩子一起做新年礼物
《新华每日电讯》点赞云南生态环境保护
探秘云南之美:大理丽江深度游全攻略
胡萝卜营养价值有哪些,揭秘胡萝卜,小小身躯,大大营养