UDP - 必须监听端口。TCP - 必须连接到服务器。
我试过netcat
和socat
。
nc -v -u -l -p 3333 | nc -v 127.0.0.1 50000
socat -v UDP-LISTEN:3333,fork TCP:localhost:50000
Run Code Online (Sandbox Code Playgroud)
两者都在工作——他们传递了信息——但这条线并没有结束。如果我关闭 netcat/socat,VLC 只会接受命令。
我监视了与的连接,sockettest
消息在同一行中一个接一个,如下所示:
playpausestopexitadd
Run Code Online (Sandbox Code Playgroud)
我需要结束该行,以便传输的消息如下所示:
play
stop
exit
add
Run Code Online (Sandbox Code Playgroud)
也许数据包没有结束?
我想知道是否nc
或socat
可以选择在一段时间后发送数据包/结束行。
如果我\n
按照@roaima 的建议添加到输出中,我会得到play\nstop\nplay\n
一行。