【发布时间】:2016-01-05 19:47:13
【问题描述】:
curl -L -i google.com
我想将响应中的 HEADER 和 CONTENT 拆分为两个变量
curl -I google.com
curl -L google.com
我不能使用这两个,因为我将使用它与 10000+ 链接
Header 和 Content 都可以有三个或更多的空行,因此分割空行不会每次都起作用
我找到了答案
b=$(curl -LsD h google.com)
h=$(<h)
echo "$h$b"
此代码也可以使用
curl -sLi google.com |
awk -v bl=1 'bl{bl=0; h=($0 ~ /HTTP\/1/)} /^\r?$/{bl=1} {print $0>(h?"header":"body")}'
header=$(<header)
body=$(<body)
【问题讨论】:
-
头部包含空行不违法吗?
-
有时会出现 302 错误,它会显示两个标题,因此在它们之间会有一个空行
标签: linux bash shell curl http-headers