Socat
當另一端關閉時停止 socat 終止
我想將應用程序的輸入和輸出重定向到一個 unix 套接字並從另一個會話連接到該套接字。到目前為止,我正在做的事情如下:
在“伺服器”端:
socat EXEC:"command" UNIX-LISTEN:/tmp/comm
在“客戶端”方面:
socat UNIX-CONNECT:/tmp/comm -
它工作得很好,但是一旦客戶端
socat
終止,伺服器也會終止。但我希望它繼續執行並稍後重新連接……我該如何實現?
您必須使用
fork
在子程序中處理連接的選項,使父程序嘗試處理更多連接。在第一個終端:
$ socat - UNIX-LISTEN:/tmp/comm,fork
在第二個終端:
$ socat UNIX-CONNECT:/tmp/comm -
在第二個終端中按
Ctrl
+C
,切換到第一個終端,然後查看您的伺服器仍在執行。