ソフトウェアのインストール時に stdout および stderr リダイレクト

ソフトウェアのインストール時に stdout および stderr リダイレクト

私は単にstdoutとstderrを保存できるようにしたいです。ソフトウェアのインストール

私は3つの状況を解決したいと思います。

  1. apt-getを使用するとき
  2. apt-getとteeを使用するとき
  3. make installを使用するとき

1. apt-getを使用するとき

ソフトウェアのインストール中にstdoutとstderrの違いを「視覚化」するのに問題があります。実際にソフトウェアをインストールすると、端末に多くの出力が表示されることが多く、その一部には警告が表示されることがよくあります。だからこんな文脈で」

  • インストールが成功した場合、stderrは完全に空ですか?
  • または警告がある場合は、標準出力で「残り」とは何ですか?
  • それとも、この場合はstdoutとstderrを一緒に保存することをお勧めしますか?

とにかくこれを食べますか?

sudo apt-get package 1>output.txt 2>errors.err

2. apt-getとteeを使用する場合

実際、stdoutとsterrをファイルに保存するだけでなく、私の端末で見続ける方が良いでしょう。では、ティーを活用すれば、これが最高の作品になるのでしょうか?

sudo apt-get package | tee 1>output.txt 2>errors.err

3. make install を使用する場合

仕事が複雑になるようですが、こんなに簡単でしょうか?

./configure 1>output1.txt 2>errors1.err
make 1>output2.txt 2>errors2.err
make install 1>output3.txt 2>errors3.err

ベストアンサー1

私はこれらの問題を順番に議論します:

$ sudo apt-get install package 1> apt.out 2> apt.err

apt-get質問をすることにした場合は、いくつかの問題が発生する可能性があります。プロンプトは標準出力に送信され、ファイルにリダイレクトされ、ユーザーには表示されません。この方法でapt-getを使用するには、他のapt-get --assume-yes install package 1> apt.out 2> apt.errオプションの使用方法に関する質問()を先制的に実行してください。ただし、「はい」を前提にすると、意図しない結果が生じる可能性があることに注意してください。

$ sudo apt-get install package | tee 1> apt.out 2> apt.err

これは少し優れていますが、最初に呼び出しを修正してみましょうtee

$ sudo apt-get package 2> apt.err | tee apt.out

初期呼び出しが正しく行われず、エラーログの代わりteetee標準エラーがリダイレクトされます。apt-get

apt-getこれはよりうまく機能しますが、質問に対する回答を提案できる標準エラーで送信される有用な情報は画面に表示されません。

$ ./configure 1>output1.txt 2>errors1.err
$ make 1>output2.txt 2>errors2.err
$ make install 1>output3.txt 2>errors3.err

これにより、期待どおりに正確に実行されます。 3つのコマンドのすべての標準エラーと標準出力を含む6つのファイルが生成されます。次のように少し難解なファイル名を使用することをお勧めします。

$ ./configure 1> configure.out 2> configure.err
$ make 1> make.out 2> make.err
$ make install 1> install.out 2> install.err

しかし、私はそれらを2つのファイルに入れることを好みます。

$ ( ./configure && make && make install ) 1> build.out 2> build.err

これは2つの異なるタスクを実行します。まず、すべてのビルドコマンドをサブシェルに入れ、魔法のように出力ストリームを一緒に収集します。第二に、シェル&&演算子を使用してただ前のコマンドが成功した場合は、次のコマンドを実行します。

ノートapt-get:あなたの電話を全プロセスに修正しました。

おすすめ記事