0

特殊な状況での socat の使用について質問があります。/var/log/logfile.log などのシステムにログファイルがあり、ログファイルから tcp (telnet) 接続にバインドしたいと考えています。

そのため、システムに対して telnet を開始すると、ログファイルに新しいエントリが表示されます。

私はこれを試します:

sudo socat -v tcp-l:4712,reuseaddr,fork file:"/var/lser2net/ser2net.log",nonblock,

それは機能しますが、新しいエントリがログファイルに書き込まれる場合でも、telnet 経由でログファイル全体を再度取得しました。

ログファイル全体ではなく、新しい行だけが必要です。

何か案は?

4

1 に答える 1

0

tailコマンドの使用:

  1. 最後の 10 行を表示し、接続が閉じられるまですべての新しい行を表示するには:

socat -v tcp-l:4712,reuseaddr,fork exec:"tail -f -n10 /var/lser2net/ser2net.log"

  1. 最後の 10 行のみを表示するには:

socat -v tcp-l:4712,reuseaddr,fork exec:"tail -n10 /var/lser2net/ser2net.log"

  1. 接続が閉じられるまで新しい行のみを表示するには:

socat -v tcp-l:4712,reuseaddr,fork exec:"tail -f -n0 /var/lser2net/ser2net.log"

幸運を!

于 2016-01-21T00:33:41.233 に答える