如何通过 UDP 将一个 Python 程序的标准输出发送到另一个使用 BASH 的标准输入?

How to send stdout of one Python program over UDP to stdin of another using BASH?

我 运行 foo.py 在 Ubuntu 盒子 A 上,我想将它的 stdout 作为 stdin 喂给 bar.py 运行 在 Ubuntu 框 B.

我想 python foo.py | /dev/udp/12.34.56.78:1234 会从盒子 A 发送到盒子 B,但是我怎样才能提取数据包并将它们送入 bar.py

我需要类似 udp_listener localhost:1234 | bar.py 的东西,但是(如果正确的话)实际语法是什么?

在你的 Ubuntu 框 B 上,运行

nc -klu -p 1234 | cat

在你的 Ubuntu 方框 A 上,运行

echo "Hello world" > /dev/udp/12.34.56.78/1234

如果可行,请将 cat 替换为 bar.py 并将 echo "Hello world" 替换为 python foo.py

您可能需要为 boxB:1234/udp

打开防火墙