重定向到网络地址

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 上的监听器