2017-03-04 11 views
1

ファイルに文字列を無期限に追加するbashスクリプトがあります。NodeJS:ファイルの変更を無期限に取得する

私はfs.readStreamを使用して、ファイルの変更を取得し、新しく追加された行をwebsocket経由でユーザーに戻そうとしています。

基本的には、アイデアがある:

  1. bashスクリプトは、ファイルに文字列を追加する(たとえば、 '/tmp/a.log')無期限。
  2. ノードスクリプトはファイルをストリーミングし、ファイルが変更されるたびに最後の行を読み込みます。
  3. ノードはwebsocket経由で新しい行を送信します。

しかし、私はfs.readStreamfs.writeStreamまわりで私の頭をラップ問題を抱えています。

私はここに正しいアプローチをしていますか?どんな助けでも大歓迎です。 ありがとう

+0

通常のファイルでなければなりませんか?代わりにunixドメインソケットを使用する場合は、node.js側のデータをリスンするほうが簡単です(また、代わりにネットワークソケットに切り替えるだけで柔軟性が増します)。 –

答えて

0

私はnpm tailを使用して終了しました。これはfs.watch関数を実装し、新しく挿入された行の操作を提供します。

関連する問題