私は次のようにファイルに出力を保存するためにティーを使用しよう:teeを使用すると終了を確認するにはどうすればいいですか?
myapp | tee log.txt
しかし、私は、出口のチェックに問題があります。前のコード:
myapp
if [ $? -eq 0 ]
then .....
しかし、$?ティーの出口になります! myappの出口を捕捉することは可能でしょうか?おかげさまで
私は次のようにファイルに出力を保存するためにティーを使用しよう:teeを使用すると終了を確認するにはどうすればいいですか?
myapp | tee log.txt
しかし、私は、出口のチェックに問題があります。前のコード:
myapp
if [ $? -eq 0 ]
then .....
しかし、$?ティーの出口になります! myappの出口を捕捉することは可能でしょうか?おかげさまで
をbashのために、便利な特殊な配列があります。 myapp
の戻りコードは$ {PIPESTATUS [0]}のようになります。
zshにはほぼ同じ方法があります。
the comp.unix.shell FAQで読むことができる厳密なボーンシェルでは、もっと厄介な、ハックな方法があります。
あなたの代わりにファイルにあなたの出力をリダイレクトすることができます:PIPESTATUS:
$ myapp > log.txt
myapp | tee log.txt
if [ $PIPESTATUS[0] -eq 0 ]
then .....
+1。 [Advanced Bash Scripting guide](http://tldp.org/LDP/abs/html/internalvariables.html)の 'PIPESTATUS'を読んでください。 –