站长家园(原代码之家)(www.adminjie.com)网站源码,微信源码,游戏源码,商业源码分享平台。
当前位置:网站首页 技术文章 网络编程 正文

linux默认安装curl吗

时间:2022-04-16 [网络编程]作者:fabuyuan 浏览:7 次

linux不是默认安装curl的。curl是一个利用URL在命令行工作的文件传输工具,并不是所有的linux系统中都会自带curl命令,例如简洁版的Linux系统就可能并不存在,只需通过执行“yum install curl”命令安装即可。

linux默认安装curl吗  2

本教程操作环境:linux5.9.8系统、Dell G3电脑。

curl 命令

Linux 系统中的 curl 命令是一个利用 URL 在命令行工作的文件传输工具,通常用于 Linux 系统中服务的访问和文件的下载。

curl 命令支持HTTP、HTTPS、FTP等多种协议,可用于服务请求的模拟和文件的上传下载。

linux默认安装curl吗?

linux不是默认安装curl。

并不是所有的系统中都会自带 curl 命令,对于简洁版的 Linux 系统可能并不存在,此时可以使用 yum 命令来安装 curl,yum install curl

安装完成后,可以使用curl --version命令查看系统中 curl 的版本信息。

curl 命令的语法格式

curl 命令的标准使用语法是:curl [options] [url],其中 options 用于指定参数项,url是请求的服务地址。

不使用参数项执行请求:curl http://www.baidu.com,该情况下命令执行会直接请求指定的服务地址,并将请求结果源代码输出到 Linux 命令行中。

linux默认安装curl吗  2

相关参数:

curl 命令通过不同的参数项实现了丰富的功能,常见的参数项有:

  • -i,即 --head,表示请求结果显示响应头信息

  • -o,即 --output,后跟文件路径,表示将请求结果写入到指定文件中

  • -s,即 --silent,静默模式,表示此时请求结果不会出现额外信息

  • -w,即 --write-out [format],参数后跟格式串,表示命令执行完成后指定输出内容

通常在测试接口是否正常时可以使用命令:

curl -o /dev/null -s -w %{http_code} http://www.baidu.com

此时服务的返回源码写入到空地址null中,且开启静默模式,并在请求后输出http状态码,如请求成功,则返回 200。

对于 curl 的更多可用参数项,可以使用 curl -h/--help 查询。

使用 curl 上传和下载文件

1、文件上传

curl 中提供了上传文件的命令参数,可以通过 -F 后跟文件信息发起请求

curl -F 'file=@test.png;type=image/png' http://www.baidu.com/upload

其中,需要注意的是:

使用-F参数时,curl认为是上传文件,会默认指定-H Content-Type: multipart/form-datas,表示使用文件上传的格式

-F参数指定文件信息时,可以指定多个文件以及文件类型,多个参数使用;分隔

2、文件下载

curl 命令中下载文件的方式有很多种,分别是:

  • 对于请求得到的结果数据,可以使用Linux种的重定向功能保存到文件 ... >> index.html

  • 使用-o/-O参数请求文件并保存,curl -o a.jpg http://www.baidu.com/b.jpg

  • 请求下载文件是,可以同时指定-#参数,这样会显示文件下载的进度,使用-s关闭

  • 如果文件下载过程停止,可以增加-C参数执行文件的断点续传

使用 curl 模拟 GET/POST 请求

curl 命令支持 POST 请求、Cookies、认证等操作,因此还可以很好的应用于开发过程中服务接口请求的模拟。

1、模拟 GET 请求

GET 请求其实就是最简单的服务请求,是通过 url 拼接的方式携带参数信息,因此直接使用 curl 最简单的请求方式即可。

开发过程中模拟 GET 请求获取数据:

curl http://localhost:8080/getUserInfo?id=1。

2、模拟 POST 请求

POST 请求是作为数据提交的一种方式,在请求服务地址时会携带参数信息进行提交,curl 命令中也提供了携带参数信息的方法。

  • -X,参数后跟请求方式,可以执行 POST 请求

  • -H,参数后跟字符串,可以指定请求头信息,如 "Content-Type:application/json" 表示以 json 格式传输数据

  • -d,参数后跟字符串,可以通过字符串的方式指定请求参数内容,使用-d参数时需要注意

    • 该命令可以使用多次,来分别指定多个参数信息

    • 也可以使用 -d 'key1=val1&;key2=val2' 来一次指定多个参数

    • 如果指定了参数为json类型,则可以使用 -d '{"id":1,"name":"shone"}' 来传递一个json对象

    • 使用 -d 参数后,请求类型会默认为POST,此时可以省略 -X 参数的指定

    • -d参数还可以指定文件作为参数,使用@后跟文件名的方式,-d "@test.txt"

对于一个完整的POST请求可以是:

curl -H "Content-Type:application/json" -d '{"id":1,"name":"shone"}' http://localhost:8080/queryInfo

3、使用 Cookies

浏览器在进行服务请求时,通常会保存请求信息到Cookies中,可以使用 -D 参数来指定保存请求的Cookies

curl -o page1.html -D cookie.txt http://www.baidu.com

curl 命令还可以模拟浏览器的请求,使用 -A 指定浏览器信息来模仿浏览器发起请求并保存Cookies

curl -A "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" -o page.html -D cookie.txt http://mydomain.net

保存的Cookie信息,可以在请求时使用-b参数指定携带Cookie

curl -b cookie.txt http://www.baidu.com

相关推荐:《Linux视频教程

以上就是linux默认安装curl吗的详细内容,更多请关注站长家园其它相关文章!

本文标签:  linuxcurl

转载请注明来源:linux默认安装curl吗

本文永久链接地址:https://www.adminjie.com/post/11244.html

免责声明:
本站所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。

附:
二○○二年一月一日《计算机软件保护条例》第十七条规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬!鉴于此,也希望大家按此说明研究软件!

版权声明:
一、本站致力于为软件爱好者提供国内外软件开发技术和软件共享,着力为用户提供优资资源。
二、本站提供的部分源码下载文件为网络共享资源,请于下载后的24小时内删除。如需体验更多乐趣,还请支持正版。
三、我站提供用户下载的所有内容均转自互联网。如有内容侵犯您的版权或其他利益的,若有侵犯你的权益请:提交版权证明文件到邮箱 2225329873#qq.com(#换为@) 站长会进行审查之后,情况属实的会在三个工作日内为您删除。

  • 站长家园(原代码之家)会员升级
  • 最新文章
    • angular学习之浅析HttpClientModule模块

      angular学习之浅析HttpClientModule模块

      本篇文章带大家了解一下angular中的HttpClientModule模块,介绍一下请求方法、请求参数、响应内容、拦截器、AngularProxy等相关知识...

    • 浅析Vue中的插件和组件,聊聊它们的区别!

      浅析Vue中的插件和组件,聊聊它们的区别!

      组件是什么?插件是什么?下面本篇文章带大家了解一下Vue中的插件和组件,聊聊插件和组件的区别,希望对大家有所帮助!一、组件是什么回顾以前对组件的定义:组件就是把...

    • 带你搞懂Java结构化数据处理开源库SPL

      带你搞懂Java结构化数据处理开源库SPL

      本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于结构化数据处理开源库SPL的相关问题,下面就一起来看一下java下理想的结构化数据处理类库,希望对...

    • 图文详解怎么用Python绘制动态可视化图表

      图文详解怎么用Python绘制动态可视化图表

      本篇文章给大家带来了关于python的相关知识,其中主要介绍了关于绘制动态可视化图标的相关问题,使用Python的Plotly图形库,让你可以毫不费力地生成动画...

    • JavaScript高级语法学习之严格模式

      JavaScript高级语法学习之严格模式

      本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于严格模式的相关问题,严格模式很好理解,是一种具有限制性的JavaScript模式,从而...

    热门文章