ファイルとシリアルポートの両方にデータを書き込む — tee を使用できますか?

ファイルとシリアルポートの両方にデータを書き込む — tee を使用できますか?

シリアル ポートからの入力をファイルに書き込み、さらにそのファイルを読み取ってシリアル ポートからホスト コンピュータに送り返そうとしています。同僚が「tee」コマンドの使用を提案しましたが、よい例が見つからないし、コマンドの意味もわかりません。「tee」でこれを行うことは可能ですか? tee は、ファイルを別の場所に送信するなどの 1 つのコマンドしか実行できないようですが、ポートを送信してからドキュメントに書き込み、ドキュメントを読み取ってポートに送信するということはできません。それとも、私が「tee」コマンドの基本を理解していないだけでしょうか。

答え1

このteeコマンドは入力を標準出力とファイルに同時に書き込みます。簡単な例は次のようになります。

$ echo "Hi there..."|tee -a hi.txt
Hi there....
$cat hi.txt
Hi there....

上記の例では、STDOUTにテキストを表示し、それをに書き込みますhi.txt。別の例としては、

$cat hi.txt|tee -a final.txt
Hi there.....
$cat final.txt
Hi there....

したがって、bash シェルを考慮すると、例は次のようになります。

$cat ./serial-port|tee -a <filename>

したがって、シリアルポートが20002の場合、上記のコマンドは次のようになります。

$cat $serial-port|tee -a serial.txt
20002
$cat serial.txt
20002

関連情報