1

我有一个创建 AF_LOCAL 套接字 (/tmp/app.sock) 的 Mac OS X 应用程序。有没有办法从 shell 脚本写入这种类型的套接字?我已经尝试了明显的(“echo xxx > /tmp.app.sock”)和一些不太明显的(“exec 3 <> /tmp/app.sock”),但我似乎没有得到任何结果。这有什么诀窍吗,还是我应该硬着头皮写几行 C 或 Java 来做我需要的事情?谢谢!

4

1 回答 1

1

网猫是你的朋友。

echo xxx | nc -U /tmp/app.sock

要测试它是否有效,首先打开另一个终端并输入:

nc -lU /tmp/app.sock

然后回到你的第一个终端并再次运行第一个命令。

请注意,互联网上的大多数文档都是针对原始(Hobbit)netcatGNU Netcat,而不是 BSD netcat。但这并没有什么不同,联机帮助页应该可以帮助您处理大部分差异。

任何你不知道如何使用 netcat 的东西,试试socat(遗憾的是它没有内置在 Mac 上,但很容易通过 Homebrew 或 MacPorts 或手动安装)。

于 2012-07-12T00:07:23.417 回答