リモートコマンドを実行し、出力をローカルファイルにリダイレクトするスクリプトがあります。
リモート コマンドは、pcap ファイルのリストを継続的に読み取り、stdout に書き込みます。
最終的なコマンドは次のようになります -
ssh root@host /sbin/path-to-utility | cat > local-file
このリモート コマンドを実行するスクリプトには、転送全体の状態を保存するためのシグナル ハンドラが必要です。
また、リモートコマンドまたはプロセスにシグナルを送信して、pcapファイルの読み取りを停止し、現在のファイルの書き込みが終了した後に終了したいと考えています。
-t オプションを試してみたところ、シグナル処理は問題なく動作しましたが、リモート コマンドによって書き込まれた実際の出力に余分な文字が追加され、pcap データが乱れました。
ssh で -t オプションを使用せずにシグナルを処理する必要があるか、ssh -t が実際のデータに追加のバイトを追加している理由を調べる必要があります。
助けてください!
ありがとう、
サチン。