我有一个带有 Raspberry Pi OS 2021 年 6 月的 RPi 1b+ v1.2。
我用来socat
触发一个 bash 脚本来唤醒网络中的另一台电脑。我使用这个命令:
sudo socat UDP-LISTEN:10 EXEC:scripts/pi-wol.sh,fork
但抛出一个错误
2021/09/05 19:26:38 socat[1743] E parseopts(): option "fork" not supported with this address type
它工作得很好,没有fork
但只有一次,我需要它不断地聆听。有什么想法我该怎么做吗?
答案1
听起来你更想要:
socat -u udp-recvfrom:10,fork exec:scripts/pi-wol.sh
对于每个收到的 UDP 数据包,分叉一个进程来处理它,并将数据包的内容发送到该脚本的新调用的标准输入上。
-u
用于单向,除非您希望脚本的输出作为 UDP 数据包发送回客户端。