当另一端关闭时,停止socat终止


12

我想将应用程序的输入和输出重定向到UNIX套接字,并从另一个会话连接到该套接字。到目前为止,我正在做以下事情:

在“服务器”端:

socat EXEC:"command" UNIX-LISTEN:/tmp/comm

在“客户端”方面:

socat UNIX-CONNECT:/tmp/comm -

它工作得很好,但是一旦客户端socat终止,服务器也会终止。但我希望它继续运行并在以后重新连接...我该如何实现?

Answers:


12

您必须使用forkoption(在子进程中处理连接),使父进程尝试处理更多连接。

在第一个航站楼:

$ socat - UNIX-LISTEN:/tmp/comm,fork

在第二个航站楼:

$ socat UNIX-CONNECT:/tmp/comm -

在第二个终端中按Ctrl+ C,切换到第一个终端,然后查看服务器是否仍在运行。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.