コマンドライン上の Unix 双方向パイプ

コマンドライン上の Unix 双方向パイプ

この Linux コマンドを使用して、Netcat をシリアル ポートに接続できました。

nc -l 80 <> /dev/ttyS0

このトランザクションをログに記録できるようにしたいと思います。バックアップ プランは Wireshark を使用して netcat ストリームを監視することですが、理想的には次のようなことを実行したいと思います。

cat /dev/ttyS0 | tee upstream.bin | nc -l 80| tee downstream.bin | /dev/ttyS0

これは ttyS0 を 2 回開こうとするため、権限エラーが発生します。これを行うよりスマートな方法をご存知の方はいらっしゃいますか?

答え1

Netcatのドキュメントにはこう書かれている

いずれかの方向に送信されたデータの 16 進ダンプ ファイルを取得するには、「-o logfile」を使用します。ダンプ行は「<」または「>」で始まり、それぞれ「ネットから」または「ネットへ」を示し、方向ごとの合計数とトラフィックの 16 進数および ASCII 表現が含まれます。16 進ダンプをキャプチャすると、当然 netcat の速度が少し低下するため、速度が重要な場合は使用しないでください。

関連情報