2011-10-02 54 views
1

输出我想编写一个脚本,执行以下操作:桥接标准输入/通过TCP套接字

  1. 开始听随机提供本地主机的TCP端口上。
  2. 启动某个外部程序将端口号作为参数传递。
  3. 接受到服务器套接字的单个连接。
  4. 将脚本的标准输入发送到套接字,并将套接字的输出发送到标准输出。
  5. 当外部程序退出时退出。

理想的解决方案是调用一些合理的标准工具的shell脚本,所以如果有人能想出办法做到这一点,那么这将是一个完美的答案。如果这证明是棘手的,那么Ruby实现对我来说很方便。否则,我会采取任何可行的实施方式。

P.S.我在这里很新,所以请让我知道这个问题是否过于笼统,或者是否因为其他原因而不属于它(也许“请为我实现X”是皱眉?)。

回答

1

您是否尝试过netcat?听众和客户端都可以用nc完成。

+0

我试过netcat了。第一个问题是,我找不到一个方法让它听一个随机可用的端口。 –

+0

也许你可以尝试给它一个随机的portnumber参数,由调用脚本提供? – wildplasser

+0

netcat -l -r将绑定到本地随机端口。现在获得*它绑定的*端口将是您自己的练习。 – CoreyStup