curl命令(全称Command Line URL Viewer)是一个综合传输工具,既可以用来上传文件,也可以用来下载文件,常用来检验一个网址是否可以访问。与curl命令相似的,还有wget命令,二者在功能上具有很多类似的地方,但curl由于可自定义各种请求参数所以在模拟web请求方面更擅长;wget由于支持ftp和Recursive所以在下载文件方面更擅长。

使用方式为:curl [options] URL  或者 curl URL [options],使用参数简称时加前缀-,使用参数全称时加前缀--,不加参数默认为GET请求。

一、常用参数:

参数简称 参数全称 说明
u user 指定认证的用户名和密码,用户名和密码:(冒号)连接
X request 指定请求的方法
x   指定请求的代理
d data 将请求方法变为POST,以application/x-www-form-urlencoded的方式指定请求体Body的参数。也可以把文件名加前缀@直接作为该参数的值,使文件中的内容直接作为请求体Body的参数
  data-urlencode 对参数进行urlencode编码后作为请求体Body的参数 
F form 以multipart/form-data的方式指定请求体Body的参数,如果是文件,文件名前加前缀@,并可以用type指定MIME类型,用filename指定服务端要接收该文件时所用的文件名,用;(分号)分隔即可
T upload-file 上传指定的文件
L location 跳转(请求)到指定的地址
e referer 指定请求头Header中的Referer
A user-agent 指定请求头Header中的User-Agent
b cookie  指定请求头Header中的Cookie
b   从指定文件读取信息作为Cookie
c   把Cookie写入到指定文件
H header 指定自定义请求头Header,键和值用:(冒号)连接
i include 获取响应头Header和响应体Response的内容
I head 只获取响应头Header的内容
D dump-header 将响应头Header保存到指定的文件
o output 获取的内容保存为指定的文件
O   获取的内容保存为文件,URL的最后部分作为文件名 
r range 限制字节大小进行分块下载
C continue-at 断点续传 
#   下载时显示进度条
k insecure 跳过SSL检测
  limit-rate 限制带宽,可以模拟弱网环境
v verbose 显示请求的完整过程
  trace 将请求过程输出到指定文件
  trace-ascii 将请求过程输出到指定文件
s silent 不显示进度信息和错误信息
S show-error 显示错误信息

二、使用技巧:

1、批量下载多个文件名连续的文件,比如文件名为1.txt、2.txt、3.txt等:

curl http://localhost:8080/[1-3].txt -O

2、对大文件分块下载,然后进行合并:

curl http://localhost:8080/test.mp3 -r 0-999 -o test1.mp3
curl http://localhost:8080/test.mp3 -r 1000-1999 -o test2.mp3
curl http://localhost:8080/test.mp3 -r 2000-2999 -o test3.mp3
//合并文件
cat test1.mp3 test2.mp3 test3.mp3 > test.mp3

Linux之curl请求相关推荐

  1. linux c curl 乱码,curl获取结果乱码的解决方法之CURLOPT_ENCODING(curl/Post请求)

    对于SSH框架的选择 选择框架:SSH 对于Web开发来说,SSH框架可以提高开发效率,还可以方便需求的变更以及对后期维护方面更容易操作.SSH也是目前稍微流行的Web开发框架. 选择框架描述: 首先 ...

  2. PHP微信支付 curl请求https://api.mch.weixin.qq.com/pay/unifiedorder 返回空的解决方案

    PHP微信支付 curl请求https://api.mch.weixin.qq.com/pay/unifiedorder 返回空的解决方案 这个问题是我在生成微信支付二维码的时候碰到的,起初代码都是正 ...

  3. vagrant搭建nginx、php环境,两个项目间使用curl请求问题

    vagrant搭建nginx.php环境,两个项目间使用curl请求问题 场景:vagrant搭建两个项目,A项目生成订单,B项目完成支付,再回到A项目返回支付成功信息. 问题:从A项目发送一条支付请 ...

  4. Linux之curl命令用法指南学习

    Linux之curl命令用法指南学习 前言 常用参数 命令样例 其他 参考链接 前言 应用场景 工作中经常需要用到curl命令在测试或生产服务器中测试第三方接口,尤其是一些内外网接口.判断线上接口信息 ...

  5. php获取curl头_php中CURL请求头和响应头获取方法

    本文主要和大家分享php中CURL请求头和响应头获取方法,希望能帮助到大家. 1.从CURL中获取响应头$oCurl = curl_init(); // 设置请求头, 有时候需要,有时候不用,看请求网 ...

  6. PHP中curl请求无响应

    php使用curl请求无反应问题 项目中碰到一次同代码不同电脑调试问题 一台电脑请求无任何响应 另一台正常响应 记录curl 最主要的是ssl去除验证+最后四项 <?php /** curl 获 ...

  7. Linux 使用curl认证深信服上网行为管理

    Linux 使用curl认证深信服上网行为管理 curl -H "Content-Type: application/x-www-form-urlencoded" -X POST ...

  8. Linux 魔法系统请求键骇客

    1. Linux 魔法系统请求键骇客 无论内核在做什么,内核都会响应 SysRq 键的输入,除非内核完全卡死. 1.1 使能魔法 SysRq 键 进入linux源码查看 linux 5.8.6内核: ...

  9. 通过CURL请求示例详解HTTPS协议

    通过CURL请求示例详解HTTPS协议 基于HTTPS通信是当前互联网最通用便捷的通信方式,简单理解来看可以视为HTTP协议 + SSL/TLS协议,通过一个curl的示例阐述一下HTTPS协议. 特 ...

最新文章

  1. python编程程序设计_程序设计入门—Python
  2. 自助用户选择VM Network
  3. LtScrollImageView:自动滚动的广告图片展示栏
  4. oracle ipc message,【案例】Oracle RAC IPC send timeout error导致RAC的节点挂起解决办法
  5. Python并发与并行的新手指南
  6. vue-router进阶:路由使用归纳、路由导航守卫、导航守卫解析流程、
  7. tcp out of order解决_Java解决CAS机制中ABA问题的方案
  8. 同学大多数都是上的整个网站重点我的
  9. linux 关于虚拟内存的几个系统调用
  10. python-演练-通过描述符来控制另一个类的实例化参数
  11. 关于React中状态保存的研究
  12. linux 网络内核 ko文件,编译内核模块 .ko文件缺少:mmzone.h bounds.h
  13. 苹果开发者三类账号说明
  14. 全是宝!20款优质高效的在线协作工具任你挑,就是这么强大!
  15. 数字图像处理(dip)
  16. 【读书笔记】《CSS新世界》—— 第一章 概述
  17. 读书 | 巴比伦最富有的人(内含思维导图)
  18. SuperMap系列——GIS数据之地图瓦片
  19. 动词ing基本用法_动词-ing的形式及用法
  20. 店铺与品牌的关键字搜索——wand(wead and)算法简介与改造

热门文章

  1. 强网杯部分Crypto题解
  2. 【干货】国外大神提高插画设计能力的经验分享
  3. Mirco F-measure and Macro F-measure
  4. 图解Janusgraph系列-官方测试图:诸神之图(Graph of the gods)分析
  5. 当下最热门网页设计趋势总结
  6. 直流电机闭环PID控制
  7. 看了上百篇文章,我希望用我方式让大家通俗理解CNN
  8. python---太阳黑子
  9. 多机器人协同编队算法原理及实现
  10. 8 款值得学习的科研论文作图软件