2016-04-24 10 views
0

私は停止するよう指示する方法BASHのログファイルへの書き込みを停止する方法は?

exec > >(tee -a "${LOG_FILE}") 
exec 2> >(tee -a "${LOG_FILE}" >&2) 

ファイルにすべての端末の出力を書き込むために、このコードを使用していますか?たとえば、出力がログに記録されないようにする場合は、

ありがとう!

+1

これは動作する可能性があります(停止するのとは別に)が、 'script'ユーティリティについて知っていますか?あなたの問題をはるかに簡単に解決できるかもしれません。 'manスクリプト'がんばろう。 – shellter

+0

ありがとう!あなたは答えとして投稿できますか?答えとして – user3027198

+0

が掲載されています。がんばろう。 – shellter

答えて

1

をログに記録するティーによる。

scriptユーティリティについて知っていますか? script myTerminalOutputFileを実行すると、それ以降のコマンドと出力はすべてmyTerminalOutputFileにキャプチャされます。欠点は、すべてをキャプチャすることです。 ^[[5m;27jのような面白いスクリーンコントロールの文字が表示されます。それはあなたのために動作するかどうかを確認するための迅速なテストを行います。

出力のキャプチャを終了するには、exitと入力するだけで、親シェルcmd-lineが返されます。

警告:お使いのOSのバージョンのスクリプトの本質的なファンキーネスについては、man scriptを参照してください。いくつかは他のものより優れています。この場合、script -k myTerminalOutputFileがうまく動作する可能性があります。

IHTH

+0

ありがとう!それはうまく動作しますが、ガベージキャラクターが実際に私を殺している..それらを取り除く方法はありますか? – user3027198

+0

http://stackoverflow.com/a/30571263/620097を参照してください。それは助けになるはずです。データを削除するほとんどのソリューションでは、予期しないエラーが発生した場合、結果の重大さに合わせてテストの努力を測るようにしてください。がんばろう。 – shellter

0

あなたがかもしれパイプ「のsed」とし、それはあなたの目標はここにあるものを完全に明らかではないが、ここでしようとするものですファイル

+0

あなたはそれをより良く説明できますか?ありがとう) – user3027198

関連する問題