7. seyon で通信ログをファイルに落とすには?

seyon の capture 機能は,Control Center のダイアログから misc を選択し, capture ボタンを押すと capture on 状態になり、通信ログがデフォルトでは capture という名前のファイルに追加書き込みされます。 (ホスト別に、異なるファイル名のキャプチャ・ファイルに書き込むように することは、何らかの方法で出来ると思いますが試してません)

この際、^@ や ^M, ^Q などのキャラクターもファイルに落とされます。 これがあると lmes などで閲覧ができません。 (lmes とは Nifty 会議室ログブラウザで、Nifty Serve の FUNIX フォーラム のデータライブラリ 17番に 360 VYX00311 97/03/15 115290 171 B lmes-200.tgz / Nifty 会議室ログ ブラウザ と登録されています)

この問題を解決するには、以下のようにします。 まず、nif2unix という名前で下記のようなスクリプトファイルを作ります。

#!/bin/sh
# For GNU tr.   ---> ^M, ^@ (NUL), ^H, ^O, ^S, ^Q, ^V, ^C is deleted.
#     tr -d '\r\000\008\017\023\021\026\003' </tmp/nif2unix.backup >$i
#     tr -d '\r\000\021' </tmp/nif2unix.backup >$i
# target IS CHANGED !
# ... and it is backupped as /tmp/nif2unix.backup.
for i in $*
  do cp -f $i /tmp/nif2unix.backup
     tr -d '\r\000\017' </tmp/nif2unix.backup >$i
     rm /tmp/nif2unix.backup
done

下から3行目の tr の行は、最初のほうにコメントで書いてある何れかに 換えたほうが良いかもしれません。次に、

   nif2unix capture* 

などとして使います。元ファイルを書き換えてます。 お使いのブラウザが標準入力をサポートしてるなら、

   tr -d '\r\000\008\017\023\021\026\003'

だけのスクリプトにして、

   nif2unix logfile | browser

などとして起動すれば良いし、さらに面倒ならこの1行もスクリプトにして しまえば良いでしょう。tr については、man tr してみてください。