は私がやろうとしていることである:プロセスの出力をloggerコマンドとheadコマンドにパイプする方法は?
スタートテキスト継続的
パイプを出力プロセスという二つのコマンドに出力:
- ロガースクリプト
- " head 'コマンドを使用して、最初の行に最初のプロセス出力を保存することができます。私がこれまで試したどのよう
(unsuccessfuly)です:
./myProgram | tee > (myLogger log.txt) | head > firstLines.txt
問題はmyProgram
とすぐhead
が終了すると終了していることです。
-i
をtee
コマンドに使用しても、myProgramを実行し続けることができません。
ロガーが受信テキストを既存のファイルに追加することがあるため、この場合は head log.txt > firstLines.txt
を実行しても機能しません。このよう
切り替え順序の周り。 'head'には'>(...) 'を、ロガーには通常のパイプを使用しますか? –
これも私の最初の推測でしたが、私はそれを試しても問題は解決しません。 –
それほどエレガントではない解決策: 一時ファイルに出力し、その一時ファイルをlog.txtに追加してから一時ファイルを削除してから、テンポラリファイルを削除してください – Bartez