私はこのコードを使用してファイルにSTDOUTをルーティング: ファイル出力にSTDOUTとバックは再び
STDOUT.reopen(File.open("./OUTPUT",'w+'))
は今、私は再び端末にルートSTDOUTにする必要があります。
どうすればよいですか?
私はこのコードを使用してファイルにSTDOUTをルーティング: ファイル出力にSTDOUTとバックは再び
STDOUT.reopen(File.open("./OUTPUT",'w+'))
は今、私は再び端末にルートSTDOUTにする必要があります。
どうすればよいですか?
はあなたが標準出力(0=stdin, 1=stdout, 2=stderr
)のための標準的なFDのハンドルであるファイルハンドル1、上のSTDOUTを再開する必要が
orig_std_out = STDOUT.clone
STDOUT.reopen(File.open('OUTPUT', 'w+'))
puts "test to file"
STDOUT.reopen(orig_std_out)
puts "test to screen"
を更新しました。
私はRubyの男ではないんだけど、私は、これは正しいについてだと思う:
STDOUT.reopen(IO.for_fd(1, "r"))
でもシンプルな場合はUNIX上:
STDOUT.reopen 'OUTPUT'
puts 'text to file'
STDOUT.reopen '/dev/tty'
puts 'text to console'