我试图连接到使用的方法是这样这样网站:连接到网站,而不卷曲或bash
echo -e "GET http://google.com HTTP/1.0\n\n" | nc google.com 80 > /dev/null 2>&1
我见过的人平谷歌与上面的代码。 我可以使用curl
或wget
去该网站,但我不想使用这些方法,因为我使用的微控制器不支持curl
或wget
。
有人可以解释上述代码是如何工作的?
我试图连接到使用的方法是这样这样网站:连接到网站,而不卷曲或bash
echo -e "GET http://google.com HTTP/1.0\n\n" | nc google.com 80 > /dev/null 2>&1
我见过的人平谷歌与上面的代码。 我可以使用curl
或wget
去该网站,但我不想使用这些方法,因为我使用的微控制器不支持curl
或wget
。
有人可以解释上述代码是如何工作的?
nc
打开上google.com
echo
语句是一个有效的GET请求,使用HTTP/1.0协议> /dev/null 2>&1
重定向既stdout
和stderr
,不产生输出$?
(值为0表示成功)你可以写这个短:
echo -e "GET /\n\n" | nc google.com 80
,更便于携带(不echo -e
):
printf "GET /\n\n" | nc google.com 80
或多个便携但仍与echo
:
{ echo GET /; echo; } | nc google.com 80
如果有像“example.com:9000/link”这样的地址,我会把/ link之后放在什么地方?所以例如它看起来像 echo -e“GET/\ n \ n”| nc google.com 80/link? –
'printf“GET/link \ n \ n”| nc example.com 9000' – janos
太棒了!谢谢 –
你知道什么'NC “效用是?你看过吗?你知道'HTTP'协议是如何工作的吗?你看过吗? –