[Linux] Shell请求网页

文件描述符

  • 0:标准输入
  • 1:标准输出
  • 2:报错输出

举例

1 exec 8<> /dev/tcp/www.baidu.com/80
2 echo -e "GET / HTTP/1.0
" 1>& 8
3 cat 0<& 8
4 exec 8<& -
  • 建立新的文件描述符8
  • <>:发送请求,并接收响应数据
  • 执行1后内核会建立与百度的socket连接
  • -e:识别 为换行符
  • GET:请求方式
  • /:请求主页
  • 执行2后内核向百度发送请求,百度响应的数据存在文件描述符8中
  • 执行3读取响应信息
  • 执行4关闭文件

参考

linux 重定向、exec实现访问百度主页

https://blog.csdn.net/weixin_43294560/article/details/102943327

一个linux标准输入标准输出问题

https://lists.ubuntu.com/archives/ubuntu-zh/2012-June/012147.html

shell浅谈之八I/O重定向

https://blog.csdn.net/taiyang1987912/article/details/39401265

原文地址:https://www.cnblogs.com/cxc1357/p/12601099.html