linux – 使用/ dev / tcp而不是wget

为什么这样做:

exec 3<>/dev/tcp/www.google.com/80
echo -e "GET / HTTP/1.1\n\n">&3
cat <&3

这失败了:

echo -e "GET / HTTP/1.1\n\n" > /dev/tcp/www.google.com/80
cat </dev/tcp/www.google.com/80

有没有办法使用wget,curl或其他一些库在单行中进行?

解决方法

第二个代码段失败,因为它打开两个单独的TCP套接字. echo连接到www.google.com并写入HTTP请求;然后第二行打开另一个连接并尝试从该套接字读取.第二个套接字只是阻塞,因为Google正在等待发送HTTP请求.

dawei

【声明】:唐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。