2017-12-09 17 views
0

今私は、apiにpingしてstdoutに書き込むサーバを持っています。私はそれをncにパイプします。複数のプログラムを同じポート上のnetcatにパイプ出力する

node server.js | nc -lk 9999 

私はそれを聞いて、データの5番目のスナップショットを出力します。

私の質問は、複数のセッションで、複数のserver.jsプログラムなどでしようとしたときです。 server1.js、server2.jsはすべてapiの異なる部分に当たってポート9999にパイプします。最初のプログラムだけがスナップショットジョブによって取得されます。

nc -lk 9999 

どのように複数の出力を1つのプログラムの出力のように扱うことができますか?

+0

'-lk'オプションは' nc'にポートでリッスンするように指示します。これは '標準入力を無視する 'ことを意味します。 –

答えて

0

このコマンドを複数回実行すると、単純に機能しません。同じポート上のnetcatのいくつかのインスタンスで聞くことはできません。 nc: Address already in useエラーが発生するはずです。ところで私は、Node.jsの中に移植素晴らしく、完全に動作するNetcatをしなかった

  1. mkfifo queue
  2. nc -lk 9999 < queue
  3. node server.js | cat > queue

:あなたは何ができるか

のようなものであるhttps://github.com/roccomuso/netcat

これは簡単にあなたが遭遇している問題は、スタンダードのネイティブncビンまたはパイプデータを使用せずに、JSでロジック全体を実装できるためです。

関連する問題