把今天遇到的一个实际问题简化一下,命令是:curl www.baidu.美国服务器com/a/?expire=2&token=3,其中查询参数里面的 token 是必须有的,否则对方会报 403 。然后执行后发现居然响应是 403 ?加上 -vvv 看了一下,原来 curl 把我的命令给转化为了 curl www.baidu.com/a/?expire=2 & curl token=3,把 url 加引号后就正常了,也就是 curl "www.baidu.com/a/?expire=2&token=3"。感觉有点坑,也可能是我太菜了不知道这个。。。
确实是你太菜导致了...
你不知道 & 在 linux 下是关键字吗?以及 &&
bash shell
?和&需要转义
curl www.baidu.com/a/\?expire=2\&token=3
url 用引号包起来就行了
真的是你的问题。
是你太菜了,不管是 cmd,powershell 还是 bash,&都是保留字
我就喜欢这样的评论
冤枉啊冤枉啊!是我的领导问的我,他想了+试了一下午没搞定然后问我,我想了 2 分钟试了一下告诉他了。。
哈哈,帮我转达给你领导,他太菜了
PUA 警告⚠️
确实是你太菜导致了...
一般字符串都要加引号
curl 百度要加 UA header, 不然会被拒。
那可确实是你太菜了
我承认,我想了 2 分钟,确实还是菜