在Ruby中编写脚本,将所有* .htm文件重命名为* .html

时间:2018-02-01 16:42:16

标签: ruby-on-rails ruby

我需要在Ruby中编写一个脚本,将所有* .htm文件重命名为给定的* .html文件 目录。

我收到了一些缺少部分内容的脚本。

我需要" METHOD"使用适当的方法名称和" REGEX"适当的 正则表达式,以匹配以.htm结尾的所有文件。

Dir.METHOD("*.htm").each do |html_file|
  FileUtils.METHOD html_file, "#{html_file.METHOD(/REGEX/,'.html')}"
end

有谁知道我应该更换什么" METHOD"和" REGEX"与?

3 个答案:

答案 0 :(得分:2)

Dir.glob("*.htm") do |html_file|
 FileUtils.mv(html_file, "#{File.basename(html_file, ".htm")}.html")
end

答案 1 :(得分:0)

Dir.glob("*.htm").each do |html_file|  
  FileUtils.mv html_file, "#{html_file.sub(/.htm/,'.html')}"
end

答案 2 :(得分:-1)

尽管它没有使用FileUtils方法,但我是这样做的,因此在本课程中进行讨论之前,我跳过并进行了字符串操作。

Dir.glob("*.htm") {|old_filename|             #Save file names w/ .htm to old_
   tmp_filename = old_filename.slice(0..-5)   #Remove (.htm) the file extension
   new_filename = tmp_filename + '.html'      #Append the .html extension
   puts new_filename                          #Display renamed file names
}