From: jweirich@... Date: 2001-08-08T18:26:38+09:00 Subject: [ruby-talk:19366] Re: how to redirect $sdtout >>>>> "David" == David Alan Black writes: markus> $old_fh = select(LOGFILE); # switch to LOGFILE for output markus> print "Countdown initiated ...\n"; markus> select($old_fh); # return to original output markus> print "You have 30 seconds to reach minimum safety distance.\n"; David> logfile = File.new("log.txt", "w+") David> old = $defout David> $defout = logfile David> print "Countdown initiated ...\n"; David> $defout = old David> print "You have 30 seconds to reach minimum safety distance.\n"; This is something I've done in the past ... def io_redirect(io) saveio = $defout $defout = io yield $defout = saveio end io_redirect(LOGFILE) do puts "Countdown initiated ..." end puts "You have 30 seconds to reach minimum safety distance." -- -- Jim Weirich jweirich@one.net http://w3.one.net/~jweirich --------------------------------------------------------------------- "Beware of bugs in the above code; I have only proved it correct, not tried it." -- Donald Knuth (in a memo to Peter van Emde Boas)