基本的に、ターミナルコマンドからファイルに出力をリダイレクトするだけでなく、ターミナルセッションでも情報を表示したいです。
〜$ command> output.logを使用すると、ターミナルウィンドウでコマンドプロセスを確認できなくなるため、output.logを確認せずにコマンドの処理が終了したタイミングがわかりません。ファイル。実行するコマンドの処理と出力にはかなりの時間がかかります。 (したがって、その出力をキャプチャしたい)提案はありますか?
あなたの質問に対する答えはtee
です。 | tee [output file]
の代わりに> [output file]
を使用するだけです
したがって、Sudo apt-get update > out.log
はSudo apt-get update | tee out.log
になります。
詳細については、 LinuxQuestion.org:BASH:出力をファイルにリダイレクトし、画面に表示する方法 、 Linuxの例:出力をファイルにリダイレクトする方法と表示する方法it out 。
tee
を使用できます。
例:$ls 2>&1 | tee text.txt
これにより、コマンドの出力がターミナルのログファイルにも出力されます。
command |tee output.log
は、印刷とキャプチャの両方を行います。