curl是一个利用url规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载
Usage: curl [options...] <url>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | - A / - - user - agent <string> 设置用户代理发送给服务器 - b / - - cookie <name = string / file > cookie字符串或文件读取位置 - c / - - cookie - jar < file > 操作结束后把cookie写入到这个文件中 - C / - - continue - at <offset> 断点续转 - D / - - dump - header < file > 把header信息写入到该文件中 - e / - - referer 来源网址 - f / - - fail 连接失败时不显示http错误 - o / - - output 把输出写到该文件中 - O / - - remote - name 把输出写到该文件中,保留远程文件的文件名 - r / - - range < range > 检索来自HTTP / 1.1 或FTP服务器字节范围 - s / - - silent 静音模式。不输出任何东西 - T / - - upload - file < file > 上传文件 - u / - - user <user[:password]> 设置服务器的用户和密码 - w / - - write - out [ format ] 什么输出完成后 - x / - - proxy <host[:port]> 在给定的端口上使用HTTP代理 - #/--progress-bar 进度条显示当前的传送状态 |
发送 POST 请求的数据体
# curl会以application/x-www-url-encoded 方式发送 POST 请求
# --data-binary:则保留文件中的回车符和换行符,不做任何转换
curl -X POST https://www.cnblogs.com -d'login=test&password=123'
向服务器上传二进制文件
#curl 模拟Web页面中提交表单会,以 multipart/form-data 的方式发送POST请求,@后加文件名 curl -F 'file=@photo.png' https://www.cnblogs.com
下载网页option:-o(小写)
curl https://www.cnblogs.com -o index.html
下载网页中的文件option:-O(大写)
curl -O http://www.test.com/hello.py # 循环下载 curl -O http://www.test.com/dodo[1-5].JPG # 分块下载 curl -r 0-100 -o dodo1_part1.JPG http://www.test.com/dodo1.JPG # 断点续传 curl -C -O http://www.test.com/dodo1.JPG
显示下载进度条
curl -# -O http://www.test.com/dodo1.JPG
通过ftp下载文件
curl -O -u 用户名:密码 ftp://www.test.com/dodo1.JPG
curl -O ftp://用户名:密码@www.test.com/dodo1.JPG
测试网页返回值
curl -o /dev/null -s -w %{http_code} https://www.cnblogs.com
指定proxy服务器以及其端口
curl -x 192.168.100.100:1080 https://www.cnblogs.com
保存http的response里面的cookie信息
curl -c cookie.txt https://www.cnblogs.com
保存http的response里面的header信息
curl -D header.txt https://www.cnblogs.com
向服务器发送 Cookie
curl -b cookiec.txt https://www.cnblogs.com
参数指定客户端的用户代理标头,即User-Agent
curl -A "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.0)" https://www.cnblogs.com
添加 HTTP 请求的标头
curl -H 'Accept-Language:zh-CN,zh;q=0.9' https://www.cnblogs.com
将不输出错误和进度信息
curl -s https://www.cnblogs.com
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统