在将curl的输出存储到bash变量中时,我遇到一个奇怪的问题。
如果我进行以下卷曲
curl -i -s https://google.com
我得到以下输出:
HTTP/2 301
location: https://www.google.com/
content-type: text/html; charset=UTF-8
date: Sat, 22 Dec 2018 03:03:59 GMT
expires: Mon, 21 Jan 2019 03:03:59 GMT
cache-control: public, max-age=2592000
server: gws
content-length: 220
x-xss-protection: 1; mode=block
x-frame-options: SAMEORIGIN
alt-svc: quic=":443"; ma=2592000; v="44,43,39,35"
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 Moved</TITLE></HEAD><BODY>
<H1>301 Moved</H1>
The document has moved
<A HREF="https://www.google.com/">here</A>.
</BODY></HTML>
现在,如果我尝试将相同的查询存储到bash变量中
GOOGLE=$(curl -s -i https://google.com)
echo $GOOGLE
我得到以下输出:
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8"> <TITLE>301 Moved</TITLE></HEAD><BODY> <H1>301 Moved</H1> The document has moved <A HREF= </BODY></HTML>ogle.com/">here</A>.
这是正确的,但是卷曲输出的前半部分丢失了……有人知道输出的其余部分去了哪里吗?
答案 0 :(得分:1)
重击细微差别-在回显时需要在变量周围添加双引号
echo "$GOOGLE"