如何让Ruby'puts'将数据写入文件?

时间:2011-05-03 17:50:19

标签: ruby

我有以下代码,我想用它来ping IP地址和写入文件。一切正常,除了我无法写入文件。

server = %w'192.168.150.254
192.168.150.251
192.168.120.1
192.168.120.2'

File.open('/test/test2.out','w') do |s|
  server.each do |p|
    r = `ping -a -n 1 #{p}`
    puts r
  end
end

1 个答案:

答案 0 :(得分:31)

puts r更改为s.puts r。你写的是stdout而不是s。 (请参阅Kernel#putsIO#puts