前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >curl 下载地址中有特殊字符解决方案

curl 下载地址中有特殊字符解决方案

作者头像
开水泡饭
发布2022-12-26 16:50:23
4130
发布2022-12-26 16:50:23
举报

curl 下载地址中有特殊字符解决方案

情况

使用 curl 下载 地址中带有 特殊字符的时候 比如下面这个地址。实际访问地址不正确,参数丢失问题

代码语言:javascript
复制
curl -o kspf.jpeg https://kspf.xyz/images/logo.svg?a=1&b=2&c=3

上面这个 url 实际上在服务端接受的参数只有 a = 1 ,造成在服务器端接收的时候经常出现数据丢失的情况

代码语言:javascript
复制
curl -o kspf.jpeg https://kspf.xyz/images/logo.svg?a=1

为什么会出现这个问题呢?因为 & 在 shell 中 表示任务在后台执行

原因

在url中直接使用特殊符号会截断命令让命令失去原本意义.

shell 中某些符号被赋予了其他含义

符号

含义

&

表示任务在后台执行

&&

表示前一条命令执行成功时,才执行后一条命令

表示管道,上一条命令的输出,作为下一条命令参数

||

表示上一条命令执行失败后,才执行下一条命令

解决方案

知道特殊字符会被liunx 识别为命令符,所以我们需要编码转义特殊符号

url 常用字符及对应编码表

字符

URL编码值

空格

%20

"

%22

#

%23

%

%

&

%26

(

%28

)

%29

+

+

,

%2C

/

%2F

:

%3A

;

%3B

<

%3C

=

%3D

>

%3E

?

%3F

@

%40

\

%5C

%7C

代码语言:javascript
复制
# 根据上面表格我们把最终的命令为下面这样
curl -s -o kspf.jpeg https://kspf.xyz/images/logo.svg?a=1%25b=2
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • curl 下载地址中有特殊字符解决方案
    • 情况
      • 原因
        • 解决方案
        相关产品与服务
        命令行工具
        腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档