重定向到网络地址
Version >= 2.04
Bash 将某些路径视为特殊路径,并可以通过写入/dev/{udp|tcp}/host/port
来进行一些网络通信。Bash 无法设置监听服务器,但可以启动连接,并且 TCP 可以至少读取结果。
例如,要发送简单的 Web 请求,可以执行以下操作:
exec 3</dev/tcp/www.google.com/80
printf 'GET / HTTP/1.0\r\n\r\n' >&3
cat <&3
www.google.com
默认网页的结果将打印到 stdout
。
同样
printf 'HI\n' >/dev/udp/192.168.1.1/6666
将发送包含 HI\n
的 UDP 消息给 192.168.1.1:6666
上的监听器