File.open,写和保存?

Cha*_*rdy 34 ruby rake ruby-on-rails rakefile

我正在尝试获取.rb文件,以便在运行该文件时,在具有指定内容的特定目录中生成另一个.rb文件.我不知道最好的方法是使用Ruby文件还是Rake文件.你输入会很棒.

Sim*_*tti 44

如果您只需要执行一个简单的脚本(如创建文件),则只需使用Ruby脚本而无需创建rake任务.

# file origin.rb
target  = "target.rb"
content = <<-RUBY
  puts "I'm the target!"
RUBY

File.open(target, "w+") do |f|
  f.write(content)
end
Run Code Online (Sandbox Code Playgroud)

你可以用它来执行文件

$ ruby origin.rb
Run Code Online (Sandbox Code Playgroud)


Dog*_*ert 23

directory = "../../directory"
File.open(File.join(directory, 'file.rb'), 'w') do |f|
  f.puts "contents"
end
Run Code Online (Sandbox Code Playgroud)


Cha*_*rdy 17

结果证明这是最好的解决方案.

File.open("linecount.txt",'w') do |filea|
  File.open("testfile.txt",'r') do |fileb|
    while line = fileb.gets
      filea.puts line.length
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

  • 在rails项目中 - 你会在哪里放置linecount.txt文件? (2认同)