2011-10-02 53 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