2014-10-26 55 views
1

我在bash中有一些腳本。 我想發送一個請求到服務器與一些頭(cloudflare塊:)。Bash Linux Curl從變量發送頭文件

我寫了這個:

headers="\ 
-H 'Host: somesite.com' \ 
-H 'Accept-Language: pl,en-US;q=0.7,en;q=0.3' \ 
-H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' \ 
-H 'User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0' \ 
-H 'Accept-Encoding: gzip, deflate' \ 
-H 'DNT: 1' \ 
-H 'Connection: keep-alive'"; 

curl $headers somesite.com 

但在輸出我有這個..

curl: (6) Couldn't resolve host 'Accept-Language' 
curl: (6) Couldn't resolve host 'pl,en-US;q=0.7,en;q=0.3' 
curl: (6) Couldn't resolve host 'Accept' 
curl: (6) Couldn't resolve host 'text' 
curl: (6) Couldn't resolve host 'User-Agent' 
curl: (6) Couldn't resolve host 'Mozilla' 
curl: (6) Couldn't resolve host '(Windows' 
curl: (6) Couldn't resolve host 'NT' 
curl: (6) Couldn't resolve host '6.1;' 

我怎樣才能把標題從變量插入命令?

+2

嘗試引用變量curl $ header「somesite.com」 – 2014-10-26 19:57:31

+0

要添加到@TomFenech,最佳實踐是在變量包含空格時引用它。 – Circadian 2014-10-26 20:12:53

回答