Bash 如何使用nc向windows 7发送udp数据包?

Bash 如何使用nc向windows 7发送udp数据包?,bash,udp,raspberry-pi,Bash,Udp,Raspberry Pi,我需要从raspberry pi向windows 7发送一些udp数据包,在windows端,我使用UDPclient侦听任何udp数据,即代码: byte[] data = new byte[1024]; string input, stringData; UdpClient server = new UdpClient("127.0.0.1", 9050); IPEndPoint sender = new IPEndPoint

我需要从raspberry pi向windows 7发送一些udp数据包,在windows端,我使用UDPclient侦听任何udp数据,即代码:

        byte[] data = new byte[1024];
        string input, stringData;
        UdpClient server = new UdpClient("127.0.0.1", 9050);

        IPEndPoint sender = new IPEndPoint(IPAddress.Any, 0);

        while (true)
        {
            data = server.Receive(ref sender);
            stringData = Encoding.ASCII.GetString(data, 0, data.Length);
            Console.WriteLine(stringData);
        }
        Console.WriteLine("Stopping client");
        server.Close();
至于raspberry pi,我想写一个bash脚本来完成这项工作,但我不知道怎么做, 我已经做了一些测试,如果我键入:

nc -vnzu 192.168.0.104
输出为:连接到192.168.0.104 9050端口[udp/*]成功

如果我输入:

 nc -4u -w1 192.168.0.104 9050
没有输出,似乎仍然没有错误

如果我不使用nc,只需键入:

echo -n "hello" >/dev/udp/192.168.0.104/9050
没有显示错误消息,但在windows端,上面的c#程序组不显示任何接收数据


所以,有谁能告诉我如何做到这一点,最好的bash脚本形式,谢谢。

大多数bash实现没有编译的
/dev/udp
/
/dev/tcp
支持,所以这可能是不适合您的原因


假设您已启用它们:问题可能是Windows 7端的防火墙配置问题。检查Windows 7防火墙是否允许到所选端口(9050)的入站连接。

根据您的问题,您的客户端正在监听
127.0.0.1:9050
。该地址不会从外部接收数据包。