我需要用 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”?
Dir.glob("*.htm") do |html_file|
FileUtils.mv(html_file, "#{File.basename(html_file, ".htm")}.html")
end
Dir.glob("*.htm").each do |html_file|
FileUtils.mv html_file, "#{html_file.sub(/.htm/,'.html')}"
end
当我运行它时,我的答案总是为零,这就是正确的答案
这是我的做法,尽管它没有使用 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
}