Rubyについてもっと学ぶために、このブログ投稿http://mentalized.net/journal/2010/03/08/5_ways_to_run_commands_from_ruby/を見て、さまざまなコマンド(Kernel#execやKernelなどの実行方法)について説明しています。 #システム。彼のサンプルファイルには2行のコードがあります
#!/usr/bin/env ruby
puts "out"
STDERR.puts "error"
そして彼は、コマンドを実行するたびに、出力がキャプチャされているかどうかに注意します。たとえば、ここではSTDOUTがキャプチャされますが、STDERRはキャプチャされません。
>> `./err.rb`
err
=> "out\n"
しかし、なぜこれが重要なのでしょうか。出力が「キャプチャ」されているかどうかの実際的な違いは何ですか。私はRubyの本でこれに対する答えを見つけようとしましたが、役に立ちませんでした。
説明ありがとうございます。