If you don't need the console output to be real-time, perhaps you could use the following as a launcher script? IO.sync = true out_file = File.new('test_output.log', 'w') ret = `ruby test_main.rb` $stdout << ret out_file << ret out_file.close