curl使用

简介: curl使用

前言

使用 curl 工具


一、curl use case

常见参数项包括:

-i :显示响应头信息
-o :将请求结果写入到指定文件中
-s :静默模式,不显示额外信息
-w :指定输出内容格式

Simple Usage
Get the main page from a web-server (从Web服务器获取主页)

curl https://www.example.com/

在这里插入图片描述

Get a README file from an FTP server:(从FTP服务器获取自述文件)

curl ftp://ftp.example.com/README

Get a web page from a server using port 8000:(使用端口8000从服务器获取网页:)

curl http://www.example.com:8000/

Get a directory listing of an FTP site:

curl ftp://ftp.example.com/

Get the all terms matching curl from a dictionary:

curl dict://dict.example.com/m:curl

Get the definition of curl from a dictionary:

curl dict://dict.example.com/d:curl

Fetch two documents at once:

curl ftp://ftp.example.com/ http://www.example.com:8000/

Get a file off an FTPS server:

curl ftps://files.are.example.com/secrets.txt

or use the more appropriate FTPS way to get the same file:

curl --ftp-ssl ftp://files.are.example.com/secrets.txt

Get a file from an SSH server using SFTP:

curl -u username sftp://example.com/etc/issue

Get a file from an SSH server using SCP using a private key (not password-protected) to authenticate:

curl -u username: --key ~/.ssh/id_rsa scp://example.com/~/file.txt

Get a file from an SSH server using SCP using a private key (password-protected) to authenticate:

curl -u username: --key ~/.ssh/id_rsa --pass private_key_password
scp://example.com/~/file.txt

Get the main page from an IPv6 web server:

curl "http://[2001:1890:1112:1::20]/"

Get a file from an SMB server:

curl -u "domain\username:passwd" smb://server.example.com/share/file.txt

二、下载操作

Get a web page and store in a local file with a specific name:

curl -o thatpage.html http://www.example.com/

Get a web page and store in a local file, make the local file get the name of the remote document (if no file name part is specified in the URL, this will fail):

curl -O http://www.example.com/index.html

Fetch two files and store them with their remote names:

curl -O www.haxx.se/index.html -O curl.se/download.html

根据上面的例子,我找了一个可以下载zip文件的链接,尝试了一下,如下提示,下载失败了。
在这里插入图片描述
问下ChatGPT:

该错误通常表示curl无法验证服务器的合法性,因此无法建立安全连接。这可能是由于以下几个原因导致的:

证书验证失败:curl默认会验证服务器的SSL证书。如果服务器的证书无效、过期、自签名或与curl的信任根证书不匹配,就会导致验证失败。在这种情况下,curl会中止连接以防止潜在的安全风险。

解决方法:你可以尝试使用--insecure选项来禁用证书验证,但这会降低连接的安全性。例如:

shell
Copy
curl --insecure -O <文件链接>


请注意,在禁用证书验证时要格外小心,确保你了解与连接相关的潜在风险。

代理问题:如果你正在使用代理服务器,可能是代理服务器配置或证书问题导致验证失败。你可以尝试检查代理服务器的配置并确保证书有效。

解决方法:在curl命令中添加代理相关的选项,例如:

shell
Copy
curl -x <代理服务器地址:端口> -O <文件链接>

<代理服务器地址:端口>替换为你实际使用的代理服务器地址和端口。

网络连接问题:有时,网络连接问题可能会导致无法建立安全连接。

解决方法:确保你的网络连接正常,尝试重新运行curl命令。如果问题持续存在,可能需要排查网络问题或联系网络管理员。

我使用第一种方式:不验证证书,果然下载下来了。而且是下载到当前的工作文件夹。C:\Users\xxx\test.zip

在这里插入图片描述

如果自己想指定文件地址

curl --insecure -o Contacts/test.zip https://www.c-lodop.com/download/Lodop6.2NoteBook20230829.zip

确保 Contacts 这个文件夹存在,否则报错,并不会帮你生成该文件夹
在这里插入图片描述
在这里插入图片描述

参考链接: https://curl.se/docs/

相关文章
|
Ubuntu
避坑指南之Samba4在Ubuntu20.04 编译安装指南
避坑指南之Samba4在Ubuntu20.04 编译安装指南
1245 0
避坑指南之Samba4在Ubuntu20.04 编译安装指南
|
7天前
|
人工智能 JavaScript API
零门槛部署 Windows 系统本地及云上 AI 助手:OpenClaw(原 Clawdbot/Moltbot)保姆级教程
2026年初,一款名为OpenClaw的AI助手在开发者社区迅速走红,它前身为Clawdbot、Moltbot,经过品牌整合后统一命名为“OpenClaw”。这款AI助手并非传统意义上的聊天工具,而是具备“动手执行”能力的智能体——既能读写本地文件、执行代码、操控命令行,又能联网搜索、分析网页内容,还可接入Qwen、OpenAI等云端API或利用本地GPU运行模型,像“私人AI员工”般处理各类事务。
1861 9
|
11月前
|
缓存 安全 Java
【Java并发】【synchronized】适合初学者体质入门的synchronized
欢迎来到我的Java线程同步入门指南!我不是外包员工,梦想是写高端CRUD。2025年我正在沉淀中,博客更新速度加快,欢迎点赞、收藏、关注。 本文介绍Java中的`synchronized`关键字,适合初学者。`synchronized`用于确保多个线程访问共享资源时不会发生冲突,避免竞态条件、保证内存可见性、防止原子性破坏及协调多线程有序访问。
325 8
【Java并发】【synchronized】适合初学者体质入门的synchronized
|
应用服务中间件 定位技术 网络安全
理解住宅IP和运营商IP的不同应用场景
随着数字化时代的发展,网络安全与隐私保护成为核心需求,代理IP因其技术优势受到关注。本文介绍了住宅IP与运营商IP的区别,包括定义、使用场景、安全性、成本及地理位置等方面,帮助用户根据需求选择合适的IP类型。
465 8
|
NoSQL Unix Linux
Linux 设备驱动程序(一)(上)
Linux 设备驱动程序(一)
487 62
|
小程序 JavaScript 前端开发
微信小程序(十七)小程序监听返回键跳转事件(安卓返回也适用)
onUnload:function(){ wx.redirectTo({ url: '../index/index' }) wx.navigateTo({ url: '../index/index' }) wx.switchTab({ url: '../../member/member' }) }
1904 0
|
监控 数据挖掘 数据安全/隐私保护
ERP系统中的预算管理与控制
【7月更文挑战第25天】 ERP系统中的预算管理与控制
943 3
|
JSON 安全 数据格式
7-6|python报错TypeError: can't pickle _thread.RLock objects
7-6|python报错TypeError: can't pickle _thread.RLock objects
|
机器学习/深度学习 人工智能 网络协议
人工智能平台PAI操作报错合集之报错 "curl: (35) TCP connection reset by peer" 表示什么
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
机器学习/深度学习 自然语言处理 图形学
CVPR 2024:文本一键转3D数字人骨骼动画,阿尔伯塔大学提出MoMask框架
【5月更文挑战第12天】CVPR 2024将展出阿尔伯塔大学的MoMask框架,该框架创新性地将文本转化为3D数字人骨骼动画,推动计算机图形学和动画制作的发展。MoMask结合NLP和计算机视觉,由文本编码器解析输入文本,动作生成器则将其转化为骨骼动画。该技术提升动画制作效率,降低门槛,但面临训练数据需求大和生成动画可能有偏差的挑战。[论文链接](https://arxiv.org/abs/2312.00063)
505 2